используя wcf вместо веб-сервиса! - PullRequest
1 голос
/ 12 января 2011

Я использую ajax на своем веб-сайте для вызова некоторой информации из UserControl под названием NewsFeed.ascx, которая находится в папке 'controls' , мой способ - создать веб-сервис * Страница 1004 * (в папке с именем WebMethods), которая в моем случае содержит функцию GetRSSReader , которая возвращает формат строки:

    [WebMethod]
public string GetRSSReader()
{
    Page page = new Page();
    UserControl ctl =
      (UserControl)page.LoadControl("~/Controls/NewsFeed.ascx");

    page.Controls.Add(ctl);

    StringWriter writer = new StringWriter();
    HttpContext.Current.Server.Execute(page, writer, false);

    return writer.ToString();
}

затем я вызываю эту страницу, используя Jquery (который мне показался слишком тяжелым), чтобы получить возвращенные данные в виде JSON , например:

<div id="Content"></div>
<script type="text/javascript" defer="defer" src="../JAVA/Default.js"></script>

>

$(document).ready(Update);

function Requests()
{
  $.ajax({
    type: "POST",
    url: "../WebMethods/Feed.asmx/GetRSSReader",
    data: "{}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(msg) {
      $('#Content').html(msg.d);
    }
  });
}

Jquery.js и эта страница (default.js), основанная в папке Java


мой вопрос: могу ли я не использовать webService и вместо этого использовать WCF !!! и как!?

Ответы [ 2 ]

1 голос
/ 12 января 2011

То, что вы называете "веб-сервисами", является старой функцией "Веб-сервис ASMX" .NET (иногда называемой веб-сервисами ASP.NET).

WCF - это замена веб-сервисов ASMX.

См. https://stackoverflow.com/tags/wcf/info для получения начальной информации.

0 голосов
/ 12 января 2011

Если вы просто возвращаете JSON, я настоятельно рекомендую вам просто использовать HttpHandler вместо некоторой комбинации WCF, SOAP, UserControls и всего, что вы добавляете туда. Здесь краткое руководство по этой теме. Вы бы сэкономили на ненужных материалах жизненного цикла страницы. А вернуть JSON так же просто, как сериализовать возвращаемые значения с помощью JavaScriptSerializer .

...