2015-03-10 2 views
0

Это мой пример кода. При выполнении он дает следующую ошибку. «Удаленное имя не может быть разрешено: www.javascriptkit.com». Я написал этот код в службе WCF.Загрузите json-контент, обратившись к URL-адресу

string url = "http://www.javascriptkit.com/dhtmltutors/javascriptkit.json"; 
Uri uri = new Uri(url); 
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(uri); 
request.Method = WebRequestMethods.Http.Get; 
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
StreamReader reader = new StreamReader(response.GetResponseStream()); 
string output = reader.ReadToEnd(); 
+0

Это написаное на любом конкретном языке? –

+0

@ScottHunter, теги улучшены :-) – Mouser

+0

Это код C#. У меня есть приложение silverlight, которое вызывает этот метод службы WCF, который должен возвращать содержимое. Содержимое, возвращаемое методом WCF, будет анализироваться и заполняться в datagrid. –

ответ

-1

Моя проблема решена сейчас. Добавлен код ниже в web.config в теге. Спасибо всем.

<system.net> 
    <defaultProxy enabled="true" useDefaultCredentials="true"> 
    </defaultProxy> 
    </system.net> 
+0

то же самое решение Mouser. Почему вы добавляете свой собственный ответ и отмечаете его правильно. Я даю вам отрицательные замечания. –

1

Использование этого кода в коде C# заставит его работать. Он использует объект webclient для загрузки JSON, а затем передает его содержимое в сериализатор JSON. Этот сериализатор отображает его на объект словаря.

Вам понадобятся следующие классы:

  • System.Web.Script.Serialization
  • System.Web.UI.WebControls
var webClient = new WebClient(); 
string readHtml = webClient.DownloadString("http://www.javascriptkit.com/dhtmltutors/javascriptkit.json"); 
var a = new JavaScriptSerializer(); 

Dictionary<string, object> results = a.Deserialize<Dictionary<string, object>>(readHtml); 
var title = results["title"].ToString(); //stores javascriptkit.com 

Для этого, чтобы работать в приложении WFC добавить следующие строки в web.config:

<system.net> 
    <defaultProxy enabled="true" useDefaultCredentials="true"> 
    </defaultProxy> 
</system.net> 
+0

Ваш код также работает. Мне просто нужна часть «readHtml» в вашем коде, которая дает содержание упомянутого URL-адреса. Остальная обработка, я обрабатываю клиентскую сторону. Я сделал свой код, добавив модификацию в web.config. Но я буду использовать этот код, поскольку это выглядит менее сложным. Спасибо. –

+0

Используем ли мы HttpClient или WebClient, мне нужно было добавить код ниже в web.config в теге, чтобы это работало. «Удаленное имя не может быть разрешено: www.javascriptkit.com».

+0

@RakeshJ, это жаль. Я строю свое решение. (Не использовал WFC), и это сработало. Будет добавлено ваше решение на мое, чтобы сохранить его в качестве действующей альтернативы. – Mouser

Смежные вопросы