|
Странная ошибка из-за [WebGet(ResponseFormat = WebMessageFormat.Json)]
|
|||
---|---|---|---|
#18+
Доброго времени суток всем! Прошу помощи, ибо столкнулся с мистическим поведением VS2010. Суть такая. Есть solution, состоящий из нескольких проектов. - CL1 (class library); - WS1 (Windows service, который юзает классы из CL1 ); - WPF1 (простенькая WPF application, которая юзает классы из WS1 и CL1); Главный класс из CL1 (допустим, с именем MainClass ) запускает пару тредов (для работы с DB) плюс открывает хост для простенького сервиса WCF (который просто возвращает рандомное число). Все компилируется и работает замечательно. Теперь мне понадобилось нечто более сложное - добавить еще один WCF, с которым будет общаться одна веб-аппликация. Требуется, чтобы общение проходило в формате JSON. Я попытался немного изменить интерфейс (подобно тому, как было сделано в предыдущей версии проекта): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
После чего начались чудеса: CL1 по-прежнему компилируется нормально, а вот WS1 и WPF1 перестают компилироваться с ошибкой: The type or namespace name 'MainClass' could not be found (are you missing a using directive or an assembly reference?) . Если закомментить строку с WebGet - снова все компилируется нормально. Может, я идиот, но не вижу разумного объяснения. Почему проблемы с MainClass? Почему они продолжаются, даже если убрать в MainClass все ссылки на сервис WCF? Может, кто подскажет, в какую сторону копать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 21:06 |
|
Странная ошибка из-за [WebGet(ResponseFormat = WebMessageFormat.Json)]
|
|||
---|---|---|---|
#18+
justas_f, ну смотри, твой какой то mainclass который ты не засветил в контексте вопроса, не компилится, потому что есть ошибка с webget. то есть это следствие. атрибут webget лежит по адресу: Пространство имен: System.ServiceModel.Web Сборка: System.ServiceModel.Web (в System.ServiceModel.Web.dll) посмотри, все ли импортнуто и подключено. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2011, 21:20 |
|
Странная ошибка из-за [WebGet(ResponseFormat = WebMessageFormat.Json)]
|
|||
---|---|---|---|
#18+
AlexeiKjustas_f, ну смотри, твой какой то mainclass который ты не засветил в контексте вопроса, не компилится, потому что есть ошибка с webget. то есть это следствие. Я понимаю, что следствие. Но почему это следствие проявляется не при компиляции CL1 (который билдится самым чудесным образом), а в последующих ассемблях?.. Не вижу логики в поведении компилятора атрибут webget лежит по адресу: Пространство имен: System.ServiceModel.Web Сборка: System.ServiceModel.Web (в System.ServiceModel.Web.dll) посмотри, все ли импортнуто и подключено. Если бы были проблемы с этой библиотекой, то я бы получал сообщение The type or namespace name 'WebGet ' could not be found (are you missing a using directive or an assembly reference?. И CL1 не компилировался бы. Но я не получаю такого сообщения и CL1 вполне себе строится. Так что проблема не в этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2011, 12:00 |
|
Странная ошибка из-за [WebGet(ResponseFormat = WebMessageFormat.Json)]
|
|||
---|---|---|---|
#18+
Разум победил тупую машину. Причина была в следующем: у CL1 в пропертях стояло "Target framework = .Net Framework" , а у WS1 и WPF1: "Target framework = .Net Framework Client Profile " После того, как во всех проектах поставил ".Net Framework", все заработало. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2011, 14:24 |
|
|
start [/forum/topic.php?fid=19&gotonew=1&tid=1397394]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
305ms |
get topic data: |
11ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 247ms |
total: | 643ms |
0 / 0 |