У меня есть веб-сервис, на который я ссылаюсь, называется RemedyInc. Я пытаюсь использовать этот веб-сервис со следующим кодом С#:
protected void ToRemedy_Click(object sender, EventArgs e)
{
RemedyInc.AuthenticationInfo AuthInfo = new RemedyInc.AuthenticationInfo();
AuthInfo.userName = "user";
AuthInfo.password = "password";
RemedyInc.HelpDesk_Submit_ServiceRequest RemTicket = new RemedyInc.HelpDesk_Submit_ServiceRequest();
RemedyInc.HelpDesk_Submit_ServiceResponse Response = new RemedyInc.HelpDesk_Submit_ServiceResponse();
RemTicket.AuthenticationInfo = AuthInfo;
RemTicket.Summary = "This is a web service Test";
RemTicket.Last_Name = "Peck";
RemTicket.First_Name = "Kenneth";
RemTicket.Service_Type = RemedyInc.Service_TypeType.UserServiceRequest;
RemTicket.Reported_Source = RemedyInc.Reported_SourceType.SelfService;
RemTicket.Status = RemedyInc.StatusType.New;
RemTicket.Urgency = RemedyInc.UrgencyType.Item4Low;
RemTicket.Impact = RemedyInc.ImpactType.Item4MinorLocalized;
RemTicket.Notes = "This is a web service test";
RemTicket.TemplateID = "AGGAAHHLITMRAAMBGOJWBIN45LBV62";
RemTicket.Action = "CREATE";
}
Все кажется прекрасным, пока я не доберусь до RemTicket.Status. Я просто выбираю одну из опций, предоставляемых веб-сервисом, но получаю эту ошибку преобразования.
enum client RemedyInc.StatusType
Ошибка: не может неявно преобразовать тип 'Client.RemedyInc.StatusType' в 'Client.RemedyInc.StatusType []'
Веб-сервис ссылается следующим образом.
public string HelpDesk_Submit_Service(
Client.RemedyInc.AuthenticationInfo AuthenticationInfo,
string Summary,
string Last_Name,
string First_Name,
System.Nullable<Service_TypeType> Service_Type,
System.Nullable<Reported_SourceType> Reported_Source,
StatusType[] Status,
System.Nullable<UrgencyType>[] Urgency,
System.Nullable<ImpactType>[] Impact,
string Notes,
string TemplateID,
string Action)
HelpDesk_Submit_Service(inValue);
return retVal.Incident_Number;
}
RemTicket.Status - это тип StatusType []
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="urn:HPD_IncidentInterface_Create_WS", Order=32)]
[System.Xml.Serialization.XmlElementAttribute("Status")]
public StatusType[] Status;
Как я могу выбрать "Создать" из списка, предоставленного веб-службой, и передать его RemTicket.Status?
public enum StatusType {
New,
Assigned,
[System.Xml.Serialization.XmlEnumAttribute("In Progress")]
InProgress,
Pending,
Resolved,
Closed,
Cancelled,
}
Это должно быть простым, но я не могу передать правильный "Тип". Любая помощь будет оценена.
Статус - это массив StatusType
RemTicket.Status = new RemedyInc.StatusType[] { RemedyInc.StatusType.New };