Web Services就是用自帶的內容做的發布測驗
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace WebApplication3
{
/// <summary>
/// WebService1 的摘要說明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允許使用 ASP.NET AJAX 從腳本中呼叫此 Web 服務,請取消注釋以下行。
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
}
}
Xamarin參考后會自動決議Reference.cs檔案
呼叫WebService的部分代碼為
WebService1.WebService1SoapClient client = new WebService1.WebService1SoapClient(WebService1SoapClient.EndpointConfiguration.WebService1Soap);
var x = await client.HelloWorldAsync();
每次執行到 var x = await client.HelloWorldAsync();這句
就會跳入到 Reference.cs檔案中這段
public System.Threading.Tasks.Task<WebServices1.HelloWorldResponse> HelloWorldAsync()
{
WebServices1.HelloWorldRequest inValue = new WebServices1.HelloWorldRequest();
inValue.Body = new WebServices1.HelloWorldRequestBody();
return ((WebServices1.WebService1Soap)(this)).HelloWorldAsync(inValue);
}
然后跳到這段
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
System.Threading.Tasks.Task<WebServices1.HelloWorldResponse> WebServices1.WebService1Soap.HelloWorldAsync(WebServices1.HelloWorldRequest request)
{
return base.Channel.HelloWorldAsync(request);/////報錯在這句
}
然后執行到這邊就報錯了,報System.Xml.XmlException: Element 'HelloWorldAsyncResponse' with namespace name 'http://tempuri.org/' was not found. Line 1, position 218.的錯誤,這是不是自動生成的Reference.cs檔案有問題啊
uj5u.com熱心網友回復:
被這鳥問題卡了一天了,還是沒點頭緒,各種方法都試了還是沒用,我看網上他們的例子都沒有被決議成異步寫法,所以我也不知道這種該怎么處理了uj5u.com熱心網友回復:
推薦你用 WebAPI 來做。因為 asmx 未必支持。uj5u.com熱心網友回復:
因為是 soap 協議。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/130324.html
標籤:Web Services
