cerate가 plist 파일 인 net C# 웹 서비스를 작성했습니다. 작동하지만 사용할 수있는 iOS 앱이 없습니다. iost 코드는 실제 plist 파일에 링크하면 작동하지만 링크가 웹 서비스에 연결되어 있으면 작동하지 않습니다. 내 서비스는 앱을 테스트 한 것과 동일한 plist를 만듭니다. 내가 예 경로로 변경하면 plistpathIOS App .net Webservice에서 plist 가져 오기
내 배열
NSString *plistpath = @"http://test.se/Service.asmx/GetCustomerList/";
NSURL *url = [NSURL URLWithString:plistpath];
// array = [NSArray arrayWithContentsOfURL:url];
array = [[NSArray alloc] initWithContentsOfURL:url];
널 "http://test.se/customers.plist" 내 배열 더이상 널 아니다.
.NET 코드 [의 WebMethod] 공공 무효 GetCustomerList은() {
List<Customer> Kundlista = new List<Customer>();
Kundlista.Add(new Customer("Kund 1", "Kläppavägen 1", "0340-651026"));
Kundlista.Add(new Customer("Kund 2", "Kläppavägen 2", "0000-651026"));
using (MemoryStream respStream = new MemoryStream())
{
using (XmlWriter xmlWriter = XmlWriter.Create(respStream, new XmlWriterSettings() { Encoding = System.Text.Encoding.UTF8, Indent = true }))
{
xmlWriter.WriteStartDocument();
xmlWriter.WriteDocType("plist", "-//Apple//DTD PLIST 1.0//EN","http://www.apple.com/DTDs/PropertyList-1.0.dtd",null);
xmlWriter.WriteStartElement("plist");
xmlWriter.WriteStartAttribute("version");
xmlWriter.WriteValue("1.0");
xmlWriter.WriteEndAttribute();
xmlWriter.WriteStartElement("array");
foreach (var customer in Kundlista)
{
xmlWriter.WriteElementString("string",customer.Name);
}
xmlWriter.WriteEndElement(); // Close dict element
xmlWriter.WriteEndElement(); // close plist element
xmlWriter.WriteEndDocument();
xmlWriter.Flush();
xmlWriter.Close();
Context.Response.ContentType = "text/xml";
Context.Response.Output.Write(Encoding.UTF8.GetString(respStream.ToArray()));
}
}
}
내 PLIST
<plist version="1.0">
<array>
<string>Kund 1</string>
<string>Kund 2</string>
</array>
</plist>
두 경우 모두 데이터가 동일하다는 것을 확인 했습니까 (헤더, 전체 키 세트)? – Wain
붙여 넣기시 내 서비스 출력 내용을 .plist 파일로 복사했습니다. –