LinQ to SQL:Windows服务中的InvalidOperationException

时间:2009-11-04 13:21:02

标签: sql linq exception

我已经实现了一个每9分钟运行一次的小型Windows服务,并将通过Web服务传输的数据写入数据库。

db我是否使用Linq To SQL

using (var db = new DataClasses1DataContext())
            {
                var currentWeather = this.GetWeatherData();

                //////TODO Add the data correct

                var newEntry = new WeatherData()
                {
                    test = currentWeather.dateGenerated.ToShortTimeString()
                };

                //var test = db.WeatherDatas.First();

                db.WeatherDatas.InsertOnSubmit(newEntry); // this throws Invalid Operation Exception
                db.SubmitChanges();
            }

为什么会抛出此异常?控制台程序中的相同代码块运行良好

alt text http://img687.imageshack.us/img687/7588/unbenanntxb.png

1 个答案:

答案 0 :(得分:1)

您是否正确设置了app.Config中的连接字符串?

IIRC,L2S DataContext上的默认构造函数从配置文件中读取连接字符串。如果连接字符串指向错误的数据库(或不存在的数据库),您可能会收到异常。

这也可以解释为什么这段代码在不同的上下文中执行时会起作用。