Я создал службу WCF с поддержкой AJAX, чтобы возвращать список <> созданного мной пользовательского класса.Я могу заставить его возвращать данные, но не знаю, как получить доступ к значениям свойств моего класса.
Вот мой класс:
[Serializable]
public class Favorite
{
public int Id { get; set; }
public string Title { get; set; }
public string Url { get; set; }
}
Вот мой сервис WCF:
[OperationContract]
public List<Favorite> GetFavorites()
{
MembershipUser thisUser = Membership.GetUser(HttpContext.Current.User.Identity.Name);
int userId = (int)thisUser.ProviderUserKey;
return GetFavorites(userId);
}
Вот конфигурация для сервиса:
<system.serviceModel>
<services>
<service name="MySvc">
<endpoint address="" behaviorConfiguration="MySvcEndpointBehavior"
binding="webHttpBinding"
contract="MySvc" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="MySvcEndpointBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
А вот скрипт jQuery, где я на самом деле вызываю сервис:
$.ajax({
type: "POST",
url: "MySvc.svc/GetFavorites",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
var favs = result.d;
}
});
В моем javascript я могу назвать «favs.length», и это дает мне правильное количество результатов.Но если я пытаюсь, например, получить доступ к «favs [0] .Title», я получаю сообщение «undefined».Кто-нибудь может мне помочь?