Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Добрый день! Подскажите как правильно вызывать службу и брать данные с сервиса Центробанка в listbox? Main.xaml Код: plaintext 1. 2. 3. 4. 5. 6. в ServiceReference добавил службу http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL появилась в проекте папка DataSources c System.Xml.Linq.XElement.datasource Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. пробую на localhost ничего не выводит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 15:06 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_Newsпробую на localhost ничего не выводит. хм...а у меня выводит ошибку касательно cross-domain communication т.е., пока Центробанк не положит соответствующий clientaccesspolicy.xml в корень сервиса, SL коннектиться не будет (упрямая тварь) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 15:43 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_News, возможный workaround - транзитить через свой сервис (где будет лежать clientaccesspolicy.xml) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 15:50 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, залил на локальный iis, clientaccesspolicy положил в корень. ничего не выходит. а для SOAP нужно еще что то ставить ? нашел в xml фотмате валюты на http://www.cbr.ru/scripts/XML_daily.asp но тоже что то не хочет забирать. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 16:30 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_Newsзалил на локальный iis, clientaccesspolicy положил в корень. ничего не выходит. свой веб/вцф сервис, который запрашивает данные у сервиса Центробанка и выдает их SL-клиенту? какая ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 17:04 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR свой веб/вцф сервис, который запрашивает данные у сервиса Центробанка и выдает их SL-клиенту? какая ошибка? wcf сервиса как такого нету. я добавил ServiceReference с адресом на службу ЦБ и дальше код в 1 посте. насчет ошибок не выходят. нажимаешь на кнопку также пусто в listbox. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 18:12 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_News, "wcf сервиса как такого нету" - тогда и указанного workaround-а быть не может... кстати, в коде несостыкуха - k.GetCursOnDateCompleted+=... а вызывается k.GetCursDynamicAsync... и еще, мне GetCursDynamic никакаких полезных данных не выдал, а вот GetCursOnDate выдает, за сегодня, к примеру... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 18:47 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, да чет в коде не то.. чуть позже посмотрю отпишусь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 19:02 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, на домашнем компе какие то ошибки выходят... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 19:42 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, debag-ер выдал эту ошибку. Произошла ошибка при попытке создать запрос к URI "http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?wsdl". Это могло быть вызвано попыткой междоменного доступа к службе без наличия приемлемой междоменной политики или с политикой, непригодной службам SOAP. Может понадобиться связаться с владельцем службы для публикации файла междоменной политики и убедиться в том, что она позволяет отправлять заголовки HTTP, связанные с SOAP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Подробности см. во внутреннем исключении. ServiceReferences.ClientConfig Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 20:20 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
<endpoint "http://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?wsdl" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 20:24 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_News, "Это могло быть вызвано попыткой междоменного доступа..." - об этом я говорил в самом первом посте в аттаче - solution vs2010 с двумя проектами, один - SL, второй - веб и под ним "транзитный" wcf-сервис (если хостить этот wcf-сервис на другом цомпутере, то надо подложить в корень, там где Web.config, файл clientaccesspolicy.xml) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2010, 21:25 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, у меня vs2008 , я сделал как у вас проект. только тут на Tuple ошибки Error 1 The type or namespace name 'Tuple' could not be found (are you missing a using directive or an assembly reference?) Error 2 The name 'Tuple' does not exist in the current context Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 09:19 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, я как понял это reference System.Tuple идет в C# 4.0... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 09:32 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_NewsSystem.Tuple идет в C# 4.0... да, просто удобно его подсовывать для биндинга в примерах/тестах (биндятся свойства Item1,2,...) ну так замените его на какой-нить простецкий public class CursOnDate { public string Vname { get; set; } public string Vnom { get; set; } public string Vcurs { get; set; } public string Vcode { get; set; } public string VchCode { get; set; } } и затем dg.ItemsSource = e.Result.Select<System.Collections.ObjectModel.ObservableCollection<object>, object>( i => new CursOnDate { Vname = i[0].ToString().Trim(), Vnom = i[1].ToString(), Vcurs = i[2].ToString(), Vcode = i[3].ToString(), VchCode = i[4].ToString() }); PS. а вообще "правильно" передавать коллекцию "common type"(общий тип для серверной и клиентской сторон) с навешенными DataContractAttribute и DataMemberAttribute (на свойства), там же можно навесить полезные атрибуты из System.ComponentModel.DataAnnotations (DisplayAttribute, ValidationAttribute и т.п.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 10:44 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
несущественная, но все же, поправка dg.ItemsSource = e.Result.Select<System.Collections.ObjectModel.ObservableCollection<object>, CursOnDate >(... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 10:46 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LRну так замените его на какой-нить простецкий к сожалению, анонимные классы не биндятся (в SL) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 10:48 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, PS. а вообще "правильно" передавать коллекцию "common type"(общий тип для серверной и клиентской сторон) с навешенными DataContractAttribute и DataMemberAttribute (на свойства), там же можно навесить полезные атрибуты из System.ComponentModel.DataAnnotations (DisplayAttribute, ValidationAttribute и т.п.) как понял надо свойства описать в IService1 ? и потом передавать их на клиента ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 11:53 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_Newsкак понял надо свойства описать в IService1 ? и потом передавать их на клиента ? Да без разницы, где описывать, важно - чтобы обе стороны, и серверная и клиентская, "знали" этот тип. Обычно общие типы выносят в отдельную сборку, но в случае с SL это не проходит (dll компиленное на "полноценном" FW несовместимо с "урезанным" SL). Чтобы не делать копии исходников, их можно "зашарить" между проектами (SL и неSL, напр.WCF). Кстати, у Центробанка же есть XML-раздача - GetCursOnDateXML - может лучше ее задействовать, чтобы не возиться с общими типами? а это что за "конструкция"? Silverlight_News Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 12:23 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, нашел в инете но Response я как понял нету в SL Код: plaintext 1. 2. 3. 4. 5. 6. 7. правильней наверное так... думал может из сервиса как то возвращать им значения а на клиенте их вызывать. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. насчет "зашарить" между проектами (SL и неSL, напр.WCF). посмотрел но пока не делал , я понял надо сделать один класс и сделать ссылку на него в веб проекте потом использовать в сервисе? как можно реализовать через GetCursOnDateXML не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 14:24 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
Silverlight_Newsнашел в инете но Response я как понял нету в SL ха! ну тогда никаких "транзитных" сервисов и не надо - SL легко скачает XML с помощью WebClient-а (если не получиться - подмогну чуть позже:) > правильней наверное так... угу > как можно реализовать через GetCursOnDateXML не понял. да собственно, от того как сделано в примере, мало чем отличается - упрощение лишь в том что XML можно передать как одну строку, но на клиенте все-равно возиться с биндингом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 16:22 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
ну вот, все делается на клиенте SL, единственная проблема - Центробанк выдает хмлину в кодировке windows-1251, а сильвер понимает лишь юникоды... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2010, 17:32 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
LR, Спасибо! Насчет windows-1251 не поддерживается в SL это конечно плохо... вообще задача была сделать бегущую валютную и новостную строку ЦБ на SL. Думал что сервис если есть, то можно забирать определенные данные и в строку передать результат. а как передать определенный массив строк из xml в TextBloсk ? Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2010, 08:39 |
|
||
|
Silverlight Валюты WCF
|
|||
|---|---|---|---|
|
#18+
думаю автору будет полезен труд другого автора :) http://habrahabr.ru/blogs/silverlight/75531/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2010, 22:44 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=36840803&tid=1442671]: |
0ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 371ms |

| 0 / 0 |
