我需要使用服务堆栈调用第 3 方休息 api,这工作正常。
但其余 api 之一需要一个名为“public”的属性
是否有一个属性我可以指定在类中给它另一个名称,但在调用服务时使用公共名称?
所以我在课堂上有这个定义
public string public { get; set; }
我得到的错误是
Member modifier 'public' must precede the member type and name
谢谢
我需要使用服务堆栈调用第 3 方休息 api,这工作正常。
但其余 api 之一需要一个名为“public”的属性
是否有一个属性我可以指定在类中给它另一个名称,但在调用服务时使用公共名称?
所以我在课堂上有这个定义
public string public { get; set; }
我得到的错误是
Member modifier 'public' must precede the member type and name
谢谢
好的,我找到了我需要的东西。
我尝试了 ServiceStack.DataAnotations.Alias 中的 Alias 属性,但这什么也没做,我不确定它的用途是什么?
然后我发现需要添加对 System.Runtime.Serialization 的引用,并且还需要用
[System.Runtime.Serialization.DataContract]
现在每个公共属性都需要以下属性,否则它不会将参数传递给其余服务器。对于名为 Public 的属性,它在 DataMember 属性构造函数中指定名称。
[System.Runtime.Serialization.DataMember]
下面是一个例子
[System.Runtime.Serialization.DataContract]
public class RequestVoiceBaseSearch : VoiceBaseBaseClass, IReturn<ResponseVoiceBaseSearch>
{
[System.Runtime.Serialization.DataMember]
public string action { get; set; }
[System.Runtime.Serialization.DataMember]
public string terms { get; set; }
[System.Runtime.Serialization.DataMember]
public string from { get; set; }
[System.Runtime.Serialization.DataMember]
public string to { get; set; }
[System.Runtime.Serialization.DataMember(Name = "Public")]
public bool _public { get; set; }
[System.Runtime.Serialization.DataMember]
public string rank { get; set; }
public RequestVoiceBaseSearch()
: base()
{
this.action = "Search";
this.terms = "";
}
}
克里斯