LINQ TO SQL with SQL Server Compact

Friday, 8 August 2008 13:37 by sakamoto

 

色々と覚書シリーズ。

 

デザイナで作成するのとコマンドラインから作成するdbmlファイルの違い。

 

【SQL Server2005(Express含む)】

 

コンストラクタに

public HogeExpressDataContext() :
        base(global::Core.Properties.Settings.Default.HogeConnectionString1, mappingSource)
{
    OnCreated();
}

 

というのが作成されます。

でも。

 

【Compact】

public Hoge(string connection) :
        base(connection, mappingSource)
{
    OnCreated();
}

 

引数を0個指定されるコンストラクタは作成されない。

 

デザイナで作成されるとプロジェクトのプロパティに接続文字列などを自動でセットしてくれるけど、sqlmetalさんで作成した場合はsdf単体から作成するわけだからもちろんプロジェクトのプロパティなど知ったことではない。ので作成してくれない。

 

作成されないと、いちいち引数を指定しないとダメで面倒なので、引数0個のコンストラクタを追加してあげるとOK。

public hoge() :
        base(global::Core.Properties.Settings.Default.LunchConnectionString1, mappingSource)
{
    OnCreated();
}

 

何にせよCompactでデザイナが使えるようになってくれると非常にうれしい・・・。

どこかに使えない理由が書いてあったですねー、探してこよっと。

 

さて、SQLserver2008インストール再チャレンジ!

Categories:  
Actions:   E-mail | Permalink | Comments (5) | Comment RSSRSS comment feed

Comments

Comments are closed