4
我今天的討論關於重構這個(#1)在C#中拋出異常,警衛
public void MyFunc(object myArgument)
{
if(myArgument == null)
throw new ArgumentNullException("myArgument");
....
有了這個(#2)
我的直覺是,#1是爲更好原因如下:
- #1比#2更簡單,因爲它不需要知道Util庫,只需要基本的C#知識
- #1不會刪除resharper重命名傳遞給ArgumentNullException構造函數的字符串的能力。
- #2將增加的依賴關係的代碼(必須能夠訪問含有該DLL的DLL)
- 堆棧跟蹤不會爲#2相同的,因爲這將是#1
我這裏的問題是: 我的直覺是否正確? 事實上,我們從另一個程序集拋出異常不會在某些情況下變成麻煩?
請問這是否真的和上面的發佈版本一樣運行? –
@Casper Leon Nielsen:你可以這樣做,是的。 – jason