Visual Studio에서 #C를 사용하여 웹 서비스 클라이언트를 만들고 웹 서비스에 액세스하려고하지만 프록시 클래스를 사용하는 일부 문제가 있습니다. 웹 서비스에서 만들었습니다.프록시 클래스의 메서드에 액세스 (Visual Studio에서 C#을 사용하여 웹 서비스 사용)
프록시 클래스의 메소드에 액세스하여 웹 페이지의 메소드에서 반환 된 값을 표시하려고합니다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebServiceClient
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
InformationServiceReference.PartnerInfoServicePortClient pbs = new InformationServiceReference.PartnerInfoServicePortClient();
pbs.ClientCredentials.UserName.UserName = "SomeUsername";
pbs.ClientCredentials.UserName.Password = "SomePassword";
test.InnerHtml = Convert.ToString(pbs.fetchRaceDayCalendarSimple().raceDay);
}
}
}
이 방법 : 다음 WebForm1.aspx.cs에
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.18408")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="java:se.atg.aisbean.calendar")]
public partial class RaceDayCalendarSimple : object, System.ComponentModel.INotifyPropertyChanged {
private RaceDaySimple[] raceDayField;
private AtgDateTime timestampField;
/// <remarks/>
[System.Xml.Serialization.XmlArrayAttribute(IsNullable=true, Order=0)]
/*Access this method ==>*/public RaceDaySimple[] raceDay {
get {
return this.raceDayField;
}
set {
this.raceDayField = value;
this.RaisePropertyChanged("raceDay");
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute(IsNullable=true, Order=1)]
public AtgDateTime timestamp {
get {
return this.timestampField;
}
set {
this.timestampField = value;
this.RaisePropertyChanged("timestamp");
}
}
public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName) {
System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
if ((propertyChanged != null)) {
propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
}
}
}
나는이 내용이 :
이 클래스와 I가 액세스 할 노력하고있어 방법은 RaceDaySimple [] raceDay입니다 경주의 날을 반환하고 WebForm1.aspx에 표시하려고합니다. 우선은 함께 노력 :
다음test.InnerHtml = pbs.fetchRaceDayCalendarSimple().raceDay;
". pbs.fetchRaceDayCalendarSimple() raceDay;" 밑줄이 그어져 뭔가 잘못 됐음을 이해합니다.
test.InnerHtml = Convert.ToString(pbs.fetchRaceDayCalendarSimple().raceDay);
그래서 "테스트"페이지 WebForm1.aspx를에 DIV ID입니다 :
Cannot implicitly convert 'WebServiceClient.InformationServiceReference.RaceDaySimple[]' to 'String'
그래서 내가 대신 이렇게해야 그림 : 그것은 유혹 할 때 나는 오류 메시지가
테스트 :
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <h1>Test:</h1> <div id="test" runat="server"></div> </div> </form> </body> </html>
그래서 다음로드 할 때 WebForm1.aspx를이 표시되는 내용입니다 :
는 WebServiceClient.InformationServiceReference.RaceDaySimple []
OK의 첫 번째 항목을 사용하려고 노력하지만, 지금은 오류 얻을 : 'WebServiceClient.InformationServiceReference.RaceDayCalendarSimple는'FirstOrDefault '없이 확장 방법에 대한 정의를 포함하지 않는'FirstOrDefault '첫 번째를 받아들이 'WebServiceClient.InformationServiceReference.RaceDayCalendarSimple'형식의 인수를 찾을 수 있습니다 (사용 지시문이나 어셈블리 참조가 누락 되었습니까?) – user3764894
System.Linq; 파일의 맨 위에. 또 다른 옵션은 .FirstOrDefault()를 [0]으로 변경하는 것입니다. –