Если вы получаете полный запрос от своего клиента, это небезопасно по своей природе, поскольку клиент может перехватить запрос и изменить запрос, отправляемый в ваш веб-API, на что угодно!
Чтобы предотвратить это, вы должны выписать статически типизированный запрос, готовый к приему параметров от вашего клиента, например, если у вас есть метод в вашем веб-API для вставки нового человека в вашу базу данных, этот код будетдостаточно, и вы передадите имя человека в веб-интерфейс.
string q = "insert into persons (name) values(@name)"
SqlCommand cmd = new SqlCommand(q, connection);
cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = "james";
Этот метод выше параметризует ваш SQL-запрос, предотвращая SQL-инъекции.
Чтобы избежать необходимости предпринимать такие усилия,Microsoft выпустила фреймворк под названием Entity Framework , который обрабатывает все это для вас и делает вашу жизнь намного проще, когда речь идет о быстром создании безопасного веб-API.