[英]How Can I Make generic Service Provider calls in C#?
想象一下,我有一个提供程序,可以为我提供许多可以远程调用的方法。
MyProviderManager.Provider.CallMyFunction(int x, int y, int z);
我有一个通过多种方式使用的类,可以在扩展该类的另一个类中创建特定变量。
例如
[DataContract, Serializable]
public class InfoStatusServices
{
[DataMember]
public int Id { get; set; }
[DataMember]
public char TypeService { get; set; }
[DataMember]
public string IdUser { get; set; }
[DataMember]
public bool ResultStatus { get; set; }
}
还有一个扩展它
[DataContract, Serializable]
public class InfoStatusServicesXPTO : InfoStatusServices
{
[DataMember]
public decimal? Balance { get; set; }
}
我的问题是,假设有使用类InfoStatusServices
的几种不同类型的方法
MyProviderManager.Provider.CallMyFunctionDark(InfoStatusServices info);
MyProviderManager.Provider.CallMyFunctionBlue(InfoStatusServices info);
有没有一种合适的方法可以使调用这些方法的通用方法,而不是为所有颜色创建方法?
您可以创建颜色枚举:
public enum Color
{
None = 0, Black = 1, ...
}
然后您可以将此参数用作第二个参数。 因此,具有相同签名(取决于颜色)的方法可以作为单个方法使用:
.CallMyFunction(InfoStatusServices info, Color color)
因此,为黑色调用此方法将如下所示:
.CallMyFunction(info, Color.Black)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.