Первый случай:
Обычный поиск продукта будет выглядеть следующим образом
http://our.api.com/product/1
Так что я думаю, что лучшая практика будет для Вы должны сделать это
http://our.api.com/Product/101404,7267261
Второй случай
Поиск с параметрами строки запроса - отлично, как это. Я хотел бы объединить термины с AND и OR вместо использования []
.
PS Это может быть субъективно, поэтому делайте то, что вам удобно.
Причиной размещения данных в URL является то, что ссылка может быть вставлена на сайт / разделена между пользователями. Если это не проблема, используйте взамен JSON / POST.
РЕДАКТИРОВАТЬ: Если подумать, я думаю, что этот подход подходит для объекта с составным ключом, но не для запроса нескольких объектов.
Не уверен, но попробуйте что-нибудь вроде этого:
bool mvcInstalled = true;
try
{
System.Reflection.Assembly.ReflectionOnlyLoad(
"System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35");
}
catch()
{
mvcInstalled = false;
}
ОБНОВЛЕНО:
Чтобы узнать, установлен ли .NET 3.5 SP1, проверьте сборку System.Web.Abstractions
ASP.NET MVC не встроен в Microsoft .NET framework 3.5 SP1.
Я хотел немного прояснить путаница, которую я видел в сети об ASP.NET MVC и .NET Framework 3.5 с пакетом обновления 1. ASP.NET MVC не был выпущен как часть SP1. я повторюсь, ASP.NET 3.5 SP1 не включают ASP.NET MVC.
Вместе с пакетом обновления 1 было выпущено Функция маршрутизации ASP.NET, которая находится в использование как ASP.NET MVC, так и Dynamic Данные.
Итак, вот оно, изо рта лошади (Опять Хаакед;).
Проблема в том, что вы смешиваете версию компилятора / времени выполнения с версиями фреймворка.
Запустив System.Environment.Version, вы получите 2.0 - что верно - но это не то, что вы ищете.
Вы ищете одноразовый ответ или что-то, что можно использовать снова и снова? Если вы действительно хотите знать, загрузите образец приложения MVC и посмотрите, запустится ли оно. В противном случае вам придется программно проверять, что установлено на машине, на которой вы работаете.