>>connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=cds;Integrated Security=True"
>
>The master application should pass the connection to the .dll being executed.
Yes, that is how I do it. The DBML however has to know the connection string at design time in order to layout the tables. Unfortunately the designer then either hard codes that information into the class or into the settings file. Even if you never use that connect string in your application.
The problem is that connection strings can sometimes have rather personal information in them such as user names and passwords. I think it is poor design to compile that type of information into your DLLs or distribute it with your app.