1

これがばかげた質問である場合は申し訳ありません。シンプルな 3 層の ASP Web フォーム アプリを作成しています。接続文字列を DAL に挿入して LINQ to SQL クラスにする方法を教えてください。

これは、DAL の App.Config から con 情報を取得していると思います

    public LNQDataContext() : 
            base(global::bcDAL.Properties.Settings.Default.TM10_ArchiveConnectionString, mappingSource)
    {
        OnCreated();
    }

これを LINQDataContext(string conStr) に変更する方法はありますか?? 管理者が何かを移動する必要がある場合に備えて、管理者がこれを web.config で設定できるようにしてください (dll でハードコーディングしないでください)。

または、他の洞察に満ちた代替手段を歓迎します。事前に感謝します。

4

2 に答える 2

1

DBMLファイルを介して生成されたDataContextクラスは部分的であるため、同じ名前の独自のクラスで拡張し、必要なコンストラクターを追加します。ただし、接続文字列が現在の接続文字列にハードコーディングされていると思う理由はわかりません。サーバーエクスプローラーからDBMLサーフェスにテーブルをドラッグすると、すでに接続文字列がweb/app.configに追加されています。それglobal::bcDAL.Properties.Settings.Default.TM10_ArchiveConnectionStringがあなたの例で指し示していることです。

于 2012-04-16T00:36:40.697 に答える
0

また、接続文字列をデータ レイヤーの app.config からプレゼンテーション レイヤーの web.config に単純にコピーすることもできます。アプリは、実行時に web.config でそれを見つけます。

于 2012-04-16T02:15:25.047 に答える