Pra*_*bhu 1 .net c# asp.net oop
假设我有一个返回业务对象的方法:
public static MyObject GetObject()
{
return Blah.Blah();
}
Run Code Online (Sandbox Code Playgroud)
现在我需要另一个执行相同操作的方法,但是以XML格式返回MyObject:
public static string GetObject(bool returnXml)
{
return Blah.Blah.Xml();
}
Run Code Online (Sandbox Code Playgroud)
我开始使用这种方法,但很快意识到调用者可以为returnXml指定false.
我唯一的选择是将我的方法重命名为类似GetObjectAsXml的东西吗?
更新...谢谢大家.
我原来的方法看起来像这样.
public static MyObject GetObject()
{
return ConvertToMyObject(GetResponseAsXML());
}
Run Code Online (Sandbox Code Playgroud)
我只需要一组新的方法,如下所示:
public static string GetObject()
{
return GetResponseAsXML();
}
Run Code Online (Sandbox Code Playgroud)
从答案来看,似乎最好的方法是使用名为GetObjectAsXML的第二组方法,对吧?我真的不想做GetObject().ToXml(),因为我想要返回原始响应.
我不确定为什么你会在这里重载相同的方法.
一个是返回对象,另一个是返回该对象的XML表示/序列化.我会用两种不同的方法.
更有趣的是你使用这些对象和XML序列化做了什么; 消费者可能想要2个重载,它们将任一类型作为参数,但这取决于您的需求.
| 归档时间: |
|
| 查看次数: |
291 次 |
| 最近记录: |