Yes its called tight coupling and its a code smell! J
I find it better to always write the code for your DataContext by passing a connection string, rather than using the parameterless constructor. A quick FIND in the ENTIRE SOLUTION should help you nail down all cases where the data context is instantiated without a connection string being passed. From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jordan Knight Sent: Thursday, 28 August 2008 10:21 AM To: listserver@ozSilverlight.com Subject: RE: [OzSilverlight] Linq to sql Yep, but by implementing the pattern below you can ensure the default constructor always uses the correct connection string - it's a preferential thing, but I like to encapsulate connection configuration in my data classes rather than pass connection strings through from my business codeJ Regards, Jordan Knight Readify - Senior Developer Suite 206 Nolan Tower | 29 Rakaia Way | Docklands | VIC 3008 | Australia M: +61 403 532 404 | E: <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED] | W: <http://www.readify.net/> www.readify.net From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Steven Nagy Sent: Thursday, 28 August 2008 10:12 AM To: listserver@ozSilverlight.com Subject: RE: [OzSilverlight] Linq to sql >> This way you can explicitly control your connection string Or you can just set the connection string to the right one when you instantiate your data context??? var db = new MainDataDataContext (SomeHelperClass.DefaultConnectionString); From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jordan Knight Sent: Thursday, 28 August 2008 8:37 AM To: listserver@ozSilverlight.com Subject: RE: [OzSilverlight] Linq to sql Hi Stephen, You are having a tricky few days J Sometimes LINQ to SQL config issues can arise when you have your LINQ classes in another assembly... If this is the case you may be able to get around it by following these steps: . In you LINQ to SQL designer (on the dbml file) - go to Properties and remove the Connection field. . This re-creates the LINQ class with a new constructor that wasn't there before you can utilise to override connection strings . Create a new cs file to house a partial class: public partial class MainDataDataContext { public MainDataDataContext() : base(System.Configuration.ConfigurationManager.ConnectionStrings["someConnSr ing"].ConnectionString, mappingSource) { OnCreated(); } } MainDataDataContext is the same class that was created by the LINQ designer. This way you can explicitly control your connection string. Regards, Jordan Knight Readify - Senior Developer Suite 206 Nolan Tower | 29 Rakaia Way | Docklands | VIC 3008 | Australia M: +61 403 532 404 | E: <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED] | W: <http://www.readify.net/> www.readify.net From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Stephen Price Sent: Wednesday, 27 August 2008 11:17 PM To: listserver@ozsilverlight.com Subject: [OzSilverlight] Linq to sql Hey all, I was having a problem with my WCF web service talking to the database. I'm using Linq to SQL, and discovered that it stores the connection strings in settings in the project. If the string in the web.config is not found then it falls back to the connection string in the dll. (from settings). That's where I discovered my string seems to be an old string. Anyway I have gotten it talking to my webhost's database again (they moved the SQL server and it stopped working!). The problem i'm having now is that on the server i'm trying to deploy my app to it's got a similar problem, it can't connect to the database. I wrote a command line app to make calls to the same assembly the webservice uses to call the database, and it has no problems connecting. The connection string in the command's config and the string in the web.config is the same. I've tried changing it from (local) to 127.0.0.1 to the subnet ip address and all seem to fail. I see no hits on the database using SQL profiler. It has to be a connection string issue but I can't see it for looking. Any ideas anyone? oh, I've set up my local machine in a similar manner and it works (using (local)) so putting that up on the server you'd think it would work. Could be a cross domain thing but the webservice is working its just the database calls by the webservice are failing. thanks! Stephen p.s. this was the problem I was trying to solve when I hit the other problem I posted earlier today. tough day! ------------------------------------------------------------------- OzSilverlight.com - to unsubscribe from this list, send a message back to the list with 'unsubscribe' as the subject. Powered by mailenable.com - List managed by www.readify.net ------------------------------------------------------------------- OzSilverlight.com - to unsubscribe from this list, send a message back to the list with 'unsubscribe' as the subject. Powered by mailenable.com - List managed by www.readify.net ------------------------------------------------------------------- OzSilverlight.com - to unsubscribe from this list, send a message back to the list with 'unsubscribe' as the subject. Powered by mailenable.com - List managed by www.readify.net ------------------------------------------------------------------- OzSilverlight.com - to unsubscribe from this list, send a message back to the list with 'unsubscribe' as the subject. Powered by mailenable.com - List managed by www.readify.net ------------------------------------------------------------------- OzSilverlight.com - to unsubscribe from this list, send a message back to the list with 'unsubscribe' as the subject. Powered by mailenable.com - List managed by www.readify.net