0

プログラムはどこで AlbumId を生成するのだろうか? 最初に、SQL Server Compact Edition を使用しようとしましたが、エラー ページに「要求された .Net Framework Data Provider が見つかりません」と表示されて、何とか続行できませんでした。

次に、MVCMusicStore コード全体をダウンロードし、データベースを「App_Data」フォルダーに追加し、Web.config ファイルの connectionStrings を変更しました。できます。データベース テーブルを確認しましたが、既に ID が設定されています (AlbumId、GenreId など)。 それらの ID を手動で設定しましたか?

しかし、それを基に新しいサイトを構築しようとしました。今回は SQL Server Compact Edition を使用しています。動作させるために 4.0 バージョンをダウンロードしました。「詳細」ページを作成しています...チュートリアルからいくつかの行を引用させてください...

「/Store/Details/[id] URL に同じ変更を加え、ダミー データを、ID がパラメータ値と一致するアルバムをロードするデータベース クエリに置き換えます。」

public ActionResult Details(int id)
 {
    var album = storeDB.Albums.Find(id);

    return View(album);
 }

IDはどこから? アルバムの初期化に使用される SampleData.cs は、ID を設定していません。SampleData.cs のコードの一部を次に示します。

new List<Album>
        {
            new Album { Title = "A Copland Celebration, Vol. I", Genre = genres.Single(g => g.Name == "Classical"), Price = 8.99M, Artist = artists.Single(a => a.Name == "Aaron Copland & London Symphony Orchestra"), AlbumArtUrl = "/Content/Images/placeholder.gif" },
            new Album { Title = "Worlds", Genre = genres.Single(g => g.Name == "Jazz"), Price = 8.99M, Artist = artists.Single(a => a.Name == "Aaron Goldberg"), AlbumArtUrl = "/Content/Images/placeholder.gif" },
            new Album { Title = "For Those About To Rock We Salute You", Genre = genres.Single(g => g.Name == "Rock"), Price = 8.99M, Artist = artists.Single(a => a.Name == "AC/DC"), AlbumArtUrl = "/Content/Images/placeholder.gif" },
            ...
        };
4

2 に答える 2

1

列は、データベースでID 列として設定されます。基本的には 1 から始まり、挿入ごとに ID がインクリメントされます (これはデフォルトの動作ですが、カスタマイズできます)。

于 2012-07-29T19:03:15.933 に答える
0

ほとんどの場合、SQL テーブルがdefaultこの列に設定されています。

于 2012-07-29T17:27:12.493 に答える