첫 번째 게시물 ... 일반적으로 내 문제에 대한 답변을 검색하고 찾을 수 있지만 이번에는 수행 할 수 없습니다. 나는 다른 개체의 무리 사용하는 목적이 : 나는 서비스에서 내 생성자를 호출.getJson 호출이 상속을 사용하는 객체와 함께 작동하지 않습니다.
[DataContract]
public class CoolStuff
{
[DataMember]
public Field[] CoolField { get; set; }
public CoolStuff()
{
CoolField = SetCoolField();
}
private Field[] SetCoolField()
{
return new Field[]
{
new Field("Project Information", "ProjectInformation"),
new Field("Resource Information", "ResourceInformation"),
}
}
}
[DataContract]
public class Field
{
[DataMember]
public string Prompt { get; set; }
[DataMember]
public string Value { get; set; }
[DataMember]
public bool IsLocked { get; set; }
public Field(string prompt, string value = "n/a", bool isLocked = false)
{
Prompt = prompt;
Value = value;
IsLocked = isLocked;
}
}
을, 나는 ($ .getJSON으로 /Service.svc/coolstuff를 직렬화 할 때이 벌금과 멋쟁이 작동/'+ id, loadCoolStuff);
문제는 Field 클래스가 다른 클래스에서 상속 받으면 실제로 .getJson 호출이 실패 이유를주지 않고 실패한다는 것입니다.
[DataContract]
public class CoolStuff
{
[DataMember]
public FieldBase[] CoolField { get; set; }
public CoolStuff()
{
CoolField = SetCoolField();
}
private FieldBase[] SetCoolField()
{
return new FieldBase[]
{
new Field("Project Information", "ProjectInformation"),
new Field("Resource Information", "ResourceInformation"),
}
}
}
[DataContract]
public class FieldBase
{
}
[DataContract]
public class Field : FieldBase
{
[DataMember]
public string Prompt { get; set; }
[DataMember]
public string Value { get; set; }
[DataMember]
public bool IsLocked { get; set; }
public Field(string prompt, string value = "n/a", bool isLocked = false)
{
Prompt = prompt;
Value = value;
IsLocked = isLocked;
}
}
누군가이 코드를 사용하여 왜 .getJSON에 대한 호출에 실패했는지 설명해주십시오. 나는 정말로 여기에서 붙어있다. 정말 고마워!
어떤 json-serializer를 사용하고 있습니까? ASP.NET MVC의 기본값은 무엇입니까? ASP.NET WebApi 기본값은 무엇입니까? 뉴튼 소프트? – Alxandr
죄송합니다, asp.net default one을 사용하고 있습니다. 필자는 직렬화에 대해 전혀 압니다. 나는이 프로젝트를 다른 사람으로부터 물려받습니다. – shawnperolis
전송중인 데이터를 살펴 봐야합니다. 브라우저를'/Service.svc/coolstuff/ '+ id' 주소로 이동하여 얻은 것을보십시오. – Alxandr