当我查看生成的aspx页面代码时,有一件事让我感到震惊。每次打印每个类引用,而不是在代码文件的顶部应用“使用”方法
有没有理由这样做?
如果两种方法没有区别那么为什么不使用“使用”来简化呢?
System.Data.DataSet theSet = new DataSet();
vs
using System.Data;
DataSet theSet = new DataSet();
答案 0 :(得分:6)
因为对于生成的代码,读取的简单性不是优先事项。
写的简单性是一个问题,但是:如果始终使用其完全限定名称指定类型,则名称冲突的可能性会降低。想象一下,您有两个提供TextBox控件的库,并将它们添加到Web表单中。
// no problem
System.Web.UI.WebControls.TextBox myDefaultTextBox = new System.Web.UI.WebControls.TextBox();
CustomLibrary.TextBox theOtherTextBox = new CustomLibrary.TextBox();
与
相比using System.Web.UI.WebControls;
using CustomLibrary;
// won't compile, would need special treatment by the code generator
TextBox myDefaultTextBox = new TextBox();
TextBox theOtherTextBox = new TextBox();
答案 1 :(得分:1)
可能有助于避免类型模糊。
更新:Heinzi更加优雅地描述。
答案 2 :(得分:0)
没有理由完全限定类型名称,除非为了清晰起见,您遵循某种编码标准。