0

すべてのプロジェクトで作業しているときに問題が発生しました。Linq2SqlでIntellisenseを取得できません。また、モデルフォルダーに部分クラスを書き込むと、Linq2Sqlデザイナーによって作成されたプロパティが部分クラスによって認識されません。だから、私は問題のすべての可能な原因を除外しようとしています。

2つのケースがあります:(i) App_Dataの下に.mdfファイルを作成し、(2) SQL EXPRESS 2005で.dboファイルを作成します。ここで、DataContextファイルを作成すると(デザイナーでテーブルをドラッグアンドドロップして)、そこにあります。同じように動作しますか?または、予期しない動作を予期する必要がありますか?

ありがとう

4

1 に答える 1

0

App_Dataは、ASP.NETアプリでのみ使用され、物理データベースファイルを格納することのみを目的としています(ASP.NETワーカープロセスには、常にそのフォルダーへの読み取り/書き込みアクセス権があります)。通常のアプリの場合、すべてのユーザー(またはアプリを使用しているすべてのユーザー)がアクセスできる一般的な場所にデータベースファイルをドロップする必要があります。

DBML (linq to sql classes file)をプロジェクトのサブフォルダーに配置します。ここで、名前空間に対して意味があります。たとえば、MyApp/DataまたはMyApp/RepositoryまたはMyApp/Modelsなどの下に配置します。

.dbmlデザイナで、プロパティツールウィンドウを確認し、データコンテキストとエンティティの名前と名前空間を指定していることを確認します。エンティティの部分クラスは同じ名前空間にある必要があります。そうでない場合、コンパイラはそれらをまとめることを認識しません。

于 2009-11-30T12:52:01.993 に答える