Я сказал бы ПЕРЕКЛЮЧАТЕЛЬ использования. Таким образом, только необходимо реализовать отличающиеся результаты. Ваши десять идентичных случаев могут использовать значение по умолчанию. Если одно изменение все, Вы должны, является явно реализацией изменение, никакая потребность отредактировать значение по умолчанию. Также намного легче добавить или удалить случаи из ПЕРЕКЛЮЧАТЕЛЯ, чем отредактировать ЕСЛИ и ELSEIF.
switch(numerror){
ERROR_20 : { fire_special_event(); } break;
default : { null; } break;
}
, возможно, даже тестируют Ваше условие (в этом случае numerror) против списка возможностей, массив, возможно, таким образом, Ваш ПЕРЕКЛЮЧАТЕЛЬ даже не используется, если определенно не будет результат.
После долгой борьбы и опробования множества различных вариантов я наконец нашел решение. Этот пост был ключом :
По сути, некоторые библиотеки DLL не были включены в папку bin при публикации проекта. В разделе «Ссылки» убедитесь, что следующие библиотеки DLL настроены правильно (убедитесь, что System.ComponentModel.DataAnnotations указывает на C: \ Program Files \ Microsoft SDKs \ RIA Services \ v1.0 \ Libraries \ Server \ System.ComponentModel. DataAnnotations.dll ):
System.ComponentModel.DataAnnotations и каждая DLL, которая начинается с System.Web, должна иметь для параметра «Копировать локально» значение true.
Создайте проект и опубликуйте его снова. Это устранило проблему для меня.
Я хотел бы поблагодарить всех, кто внес свой вклад в решение этой проблемы (в этой и других ветках).
Проверяли ли вы адресную часть вашей конфигурации привязки? Похоже, используется относительный адрес.
Если вы проверите ошибку в этом сервисном запросе (что нормально, как вы ее видите), что говорит содержимое в Fiddler? NotFound является универсальным в плагине, но скрипач, вероятно, покажет вам HTTP 500 или что-то еще с некоторыми подробностями в теле ответа.
1) На каком IIS вы развертываете? Если < 7 Вам нужно Исправление
2) Включите все свои сборки RIA (Set Copy Local => True), включая:
System.Web.Ria
System.Web.DomainServices. (их 4 в зависимости от того, что вы используете)
3) Это может быть результатом того, что ваш узел в приложении ASPNET настроен на Windows, а ваш сайт настраивается на Anonymous в IIS. Для большинства, простая замена узла на mode="Forms" удалит эту ошибку и позволит Вам продолжить. Для других, если ваша конфигурация IIS настроена на использование как Integrated Auth, так и Anonymous, вы захотите снять галочку с одного из них в настройках безопасности каталога для сайта в консоли управления IIS.
WCF RIA Services VS 2008 ошибки развертывания
В сети много хороших сообщений, и лучшая, кажется, здесь (Спасибо Тим)
Хотя все сообщения я найденные были в некотором роде полезны, окончательным решением в моем случае была несоответствующая строка подключения к БД. Хотя сгенерированная VS строка DB отлично работала в VS, я не мог развернуть ее на своем QA-сервере, пока не обрезал ее так:
add name="myEntities" connectionString="metadata=res://*/ReviewsModel.csdl|res://*/ReviewsModel.ssdl|res://*/ReviewsModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=dataSource;Initial Catalog=intitalCatalog;User ID=userID;Password=password;"" providerName="System.Data.EntityClient"
Ошибки развертывания WCF RIA Services VS 2008 г. Здесь находится решение, которое вы ищете, скачайте пример и проверьте себя на живом WCF RIA (Vs2008) сервисе.