我想使用这行代码:
using (ADataContext _dc = new ADataContext(ConnectionString), BDataContext _dc2 = new BrDataContext(ConnectionString)){ // ...}
这会产生编译错误:
不能在 for、using、fixed 或声明语句中使用多种类型。
我以为这可能吗? MSDN 说的是:http://msdn.microsoft.com/en-us/library/yh598w02%28VS.80%29.aspx http://msdn.microsoft.com/en-us/library/yh598w02%28VS.80%29.aspx在 MSDN 示例代码中使用了 Font,它是一个类,因此也是一个引用类型以及我的两个 DataContext 类。
这里出了什么问题?我的尝试与 MSDN 示例有何不同?
MSDN 声明了两个相同类型对象的实例。您声明了多种类型,因此您收到了错误消息。
Edit:语言规范第 8.13 节说:
当资源获取采用局部变量声明的形式时,可以获取给定类型的多个资源。形式的 using 语句
using (ResourceType r1 = e1, r2 = e2, ..., rN = eN) statement
完全等价于一系列嵌套的 using 语句:
using (ResourceType r1 = e1)
using (ResourceType r2 = e2)
...
using (ResourceType rN = eN)
statement
关键是这些都是给定类型的资源,而不是类型,这与 MSDN 示例相匹配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)