I want to use this line of code:
using (ADataContext _dc = new ADataContext(ConnectionString), BDataContext _dc2 = new BrDataContext(ConnectionString)){ // ...}
This gives a compile error:
Cannot use more than one type in a
for, using, fixed or declartion
statement.
I thought this was possible? MSDN says it is: http://msdn.microsoft.com/en-us/library/yh598w02%28VS.80%29.aspx
In the MSDN sample code Font is used, which is class and thereby a reference type as well as my two DataContext classes.
What went wrong here? How does my attempt differ from the MSDN sample?
MSDN declared instances of two objects of the same type. You’re declaring multiple types, hence the error message you received.
Edit: To go all “Eric Lippert” on it, section 8.13 of the language specification says:
When a resource-acquisition takes the form of a local-variable-declaration, it is possible to acquire multiple resources of a given type. A using statement of the form
is precisely equivalent to a sequence of nested using statements:
The key is that these are resources of a given type, not types, which matches the MSDN example.