1

現在、プログラムに必要なすべてのデータが別のクラスに保存されており、Toolそのクラス内にはDictionary<int, string> myTools. 将来の使用のために、これを SQL データベース内のテーブルに格納する方がよいと聞いています。

これが私が今持っているものです:

public static Dictionary<int, string> myTools = new Dictionary<int, string>()
{
    {1001, "Tool 1"},
    {1002, "Tool 2"},
    {1003, "Tool 3"},
    //...and so on...
}

私のプログラムでこれを使用すると、関連付けられた整数を参照し、次のようなものを使用して、その整数に関連付けられた文字列「名前」を出力できますTool.myTools[1002]。ツールの呼び方を変えることなくツールの名前を簡単に変更できるので、この方法が気に入っています。ただし、最終的には 1 つのデータベースを介して複数のプログラムのツール名をすべて制御したいと考えています。そのため、この Dictionary クラスを SQL サーバーに本質的にコピーしようとしています。これは単一のテーブルの形で行われると思いますが、SQL Server Management Studio の経験はほとんどないため、ここに助けを求めています。

知りたいこと: SQL でテーブルを作成して、対応する整数でツールを参照できるようにするにはどうすればよいですか? すべてのデータをテーブルにコピーし、それをわずかに異なる関数で参照するのと同じくらい簡単な場合は、簡単な質問で申し訳ありませんが、簡単な回答を歓迎します!

前もって感謝します!

編集:どうやら私は自分自身に十分な信用を与えていませんでした。SQL Server Management Studio を使用してデータベース内に作成されたテーブルが既にあります。このテーブルには と の 2 つの列しかありませnumbername。これが間違っている場合は、それを変更または修正するために何をする必要があるかを尋ねていました。これが正しい場合は、これらのツールを参照できるように Visual Studio 内で何をする必要があるかを知りたいだけです。辞書と。データベースをインポートしてからそれを参照するのと同じくらい簡単db.Tools.[number]ですか?

4

1 に答える 1

2

いくつかのエンティティ フレームワーク チュートリアル、特に Code First をグーグルで検索することをお勧めします。

モデルの作成方法を学ぶとき、これはモデルの良い出発点になります。

class Tool { 
  int ToolId {get;set;}  
  string Name {get;set;}
}

特定のツールをグラブするには

Tool myTool = db.Tools.Single(t=>t.ToolId == theVariableWithToolIdIWant);
string theNameOfTheTool = myTool.Name;

これは現時点ではあまり意味がありませんが、いくつかのチュートリアルを実行してデータベース コンテキストをセットアップした後、やりたいことをすぐに開始できるようになることを願っています。

于 2013-06-21T18:13:51.490 に答える