VS 2015、ASP.NET MVCプロジェクトを更新して、すべてのデータモデル/テーブルを保持するデータプロジェクトを保存するプロシージャなどタイプまたは名前空間の定義、またはファイルの終わりが期待される:データプロジェクトのストアドプロシージャ
ビルド(または再構築)時には、このプロジェクトでは1755のエラーが発生します。これらのエラーはすべて「クラスの問題」と見なされます。ただし、これらのエラーは私のストアドプロシージャファイル(.sql
)にあります。どのようにしてVSが.sql
ファイルであることを認識させ、クラスとして扱うべきではありませんか?
私のエラーの一部:
- CS1022 C#型または名前空間の定義、またはファイルの終わりには#型または名前空間名「BEGIN」
- CS0246 Cが見つかりませんでした期待(あなたが不足しています使用指示文またはアセンブリ参照?)-as BEGIN my SQL文
- CS0103 C#名前 '@Name'は現在のコンテキストに存在しません。 >ビルドアクション - パラメータ名で-as
- CS1003 C#構文エラーは、「」私はプロパティを更新しようとしている
1はコメントアウト行の途中にある - これが予想しましたコンパイルする(いくつかのサイトで提案されているように)が、問題を修正しなかった。
また、プロジェクトは別名、宣言内のスキーマを含む、私と一緒に問題を持っているようだ:
CREATE PROCEDURE [SCHEMA].[SPROC NAME] ...
それは私が唯一のストアドプロシージャ名を使用することを望んでいます。これは私のテーブル宣言/ create tableステートメントにも当てはまります。それは(ここで、斜体)以下のエラー:興味のある方のために
CREATE TABLE [SCHEMA].[TABLE NAME]
...
ALTER TABLE [SCHEMA].[TABLE NAME] WITH CHECK
ADD CONSTRAINT [FOREIGN KEY]
FOREIGN KEY ([FIELD NAME]) REFERENCES [SCHEMA].[FOREIGN TABLE NAME]([ID])
UPDATE --- ---して、新しい質問
私は右クリックし、私のソリューションエクスプローラで、私のストアドプロシージャを作成するには私のスキーマでは、上に乗って、 "ストアドプロシージャ..."を選択して選択し、私のSSMSデータベースから自分のストアドプロシージャをコピー/貼り付けました。新しいデータプロジェクトを調査しているときに、「SQL Serverオブジェクトエクスプローラ」が見つかりました。このストアドプロシージャがこのデータベースプロジェクトにリストされていませんでした。データベースプロジェクト - >プログラマビリティ - >ストアドプロシージャを右クリック - >新しいストアドプロシージャの追加に移動して、すべてのストアドプロシージャを再追加しました。私はすべての私の初期のストアドプロシージャを削除し、これは奇妙なエラーのすべてをilliminated。このように、ストアドプロシージャを作成するとき
、ファイルが
CREATE PROCEDURE [SCHEMA].[SPROC NAME]
と自動的に入力された私は、[SCHEMA]付属してビルドする場合、私はエラー
SQL71501取得:手順: [SCHEMA]。[SPROC NAME]はスキーマへの未解決の参照を持っている[SCHEMA]
同じことが私のテーブル(および外部キー)のために起こります。
すべての[SPROC NAME]、[TABLE NAME]などの先頭から[SCHEMA]を削除すると、エラーはなくなりますが、SQL Serverオブジェクトエクスプローラ、すべてのテーブル、ストアドプロシージャなどがスキーマdboにあります。
すべての要素がエラーなしで指定されたスキーマにあることをコードに理解させるにはどうすればよいですか?
また、「プロパティ」の「プロジェクト設定」で、「デフォルトスキーマ」が「自分のスキーマ」に設定されています。私はこれが問題の一部であるのを見ることができましたが、私のテーブルとsprocsのすべてが私の指定されたスキーマの下にあるので、それを修正する方法がまだわかりません。 – swallis1