- PR -

SqlDataAdapterが生成されない(VS.NET)

1
投稿者投稿内容
んちょ。
常連さん
会議室デビュー日: 2006/02/22
投稿数: 28
投稿日時: 2006-04-12 17:13
こんにちは。

早速ですが、力を貸してください。

VS2003でWEBアプリケーション(ASP.net/VB)を作成中なのですが、
ある日突然、ひとつのページだけSqlDataAdapterが生成されなくなってしまいました。
(VS2003からウィザードを作成するやつです)

作成しようとすると
「パラメータが間違っています」と出てしまいます。
OleDbDataAdapterだと問題なく作成されます。

特に目立った変更はしていないので、自分でも不思議で仕方がありません。
どこを調べていいのかもわからなかったので投稿させていただきました。

あと、ひとつきになることがありまして、
新しい項目を追加しようとすると、
「Webフォームデザイナにファイルを読み込めませんでした。
以下のエラーを修正してから再度読み込んでください。
このファイルのデザイナに、デザインできるクラスがないため、デザイナを表示できませんでした。
このページで使用されるすべてのクラスがオブジェクト内でビルドまたは参照されていることを確認してください。」
と出てきます。
これはSqlDataAdapterが生成されないのと関係あるのでしょうか。
デバッグ等は問題なくできます。

環境はWindowsXp Pro+SQLServer2003です
SQLServerも問題なく動いています。

よろしくお願いします(´Д⊂グスン
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-12 17:21
こんにちは。

  このファイルのデザイナに、デザインできるクラスがないため、デザイナを表示できませんでした。

です。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
んちょ。
常連さん
会議室デビュー日: 2006/02/22
投稿数: 28
投稿日時: 2006-04-12 17:36
じゃんぬねっとさん、早々のレスありがとうございました。

が!しかし!
よくわかりません。
わからないなりにも・・・
フォームとコントロールは、デザイナをサポートする基本クラスから派生されている必要があります。作業中のプロジェクトで、継承されたフォームやコントロールなどから派生したフォームやコントロールを使用している場合は、そのプロジェクトが [ビルド] メニューの [ソリューションのビルド] をクリックすることによってビルドされたかどうかを確認する必要があります。

とあったので、ビルドしてみたところ、新しい項目の追加はできるようになりましたヽ(´ー`)ノ

ところがSqlDataAdapterが生成されないのは相変わらずです。
メッセージも変わりありません。

んちょ。
常連さん
会議室デビュー日: 2006/02/22
投稿数: 28
投稿日時: 2006-04-12 17:41
なっ!
自己解決ですorz

Region " Web フォーム デザイナで生成されたコード "

'この呼び出しは Web フォーム デザイナで必要です。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

と書いてあるところに、SqlCommandがたくさん書いており
それを適当に消したらSqlDataAdapterが生成されるようになりました。
SqlDataAdapter作成時のSqlCommandが重複するからでしょうか。
理由はよくわかりませんが(そもそも Web フォーム デザイナで生成されたコードを開くこと自体も大冒険だった)、解決です。

お騒がせしました。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-12 17:51
引用:

courageさんの書き込み (2006-04-12 17:41) より:

それを適当に消したらSqlDataAdapterが生成されるようになりました。
SqlDataAdapter作成時のSqlCommandが重複するからでしょうか。


でしょうね。

デザイナが自動生成したコードが、何らかの形で削除漏れしていたのでしょう。
ウィザードを使っていると稀にありますね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)