C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■8502  ASP.NETにて更新処理中のエラー
□投稿者/ .NET初心者 -(2007/10/01(Mon) 17:12:34)

    分類:[ASP.NET (VB)] 

    お世話になります。
    以前、質問させていただいたものです。
    またもやエラーが発生し、MSDN等検索してみたのですが、
    いまひとつ解らないため皆様のお知恵を賜りたいと思います。

    以下に環境・状況・ソースを載せますでよろしくお願いします。


    環境:VWD2005EXPRESS
       SQLServer2005EXPRESS

    エラーメッセージ:
    オブジェクトの型 System.Web.UI.WebControls.TextBox から既知のマネージ プロバイダのネイティブ型へのマップがありません。

    動作状況:
    フォームビューにて編集作業を行い、
    DBに反映させるために更新ボタンをクリックしたところで発生しました。


    Protected Sub FormView1_ItemUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.FormViewUpdateEventArgs) Handles FormView1.ItemUpdating
    '更新情報を取得する
    e.NewValues("UPDDATE") = Format(Now, "yyyyMMdd")
    e.NewValues("UPDTIME") = Format(Now, "HHmmss")
    e.NewValues("UPDPGM") = "Mnt_Mgnb_U"
    e.NewValues("UPDSYCD") = ""
    e.NewValues("GNBKJ") = DirectCast(FormView1.FindControl("MGGNBKJTextBox"), TextBox)
    e.NewValues("GNBKN") = DirectCast(FormView1.FindControl("MGGNBKNTextBox"), TextBox)
    e.NewValues("GNBRK") = DirectCast(FormView1.FindControl("MGGNBRKTextBox"), TextBox)
    e.NewValues("MNGSY") = DirectCast(FormView1.FindControl("MGMNGSYTextBox"), TextBox)
    e.NewValues("GNBCLR") = DirectCast(FormView1.FindControl("MGGNBCLRTextBox"), TextBox)
    e.NewValues("GNBSRT") = DirectCast(FormView1.FindControl("MGGNBSRTTextBox"), TextBox)
    End Sub


    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:DBConString %>"
    UpdateCommand="UPDATE M_GENBA SET UPDDATE = @UPDDATE, UPDTIME = @UPDTIME, UPDPGM = @UPDPGM, UPDSYCD = @UPDSYCD, MGGNBKJ = @GNBKJ, MGGNBKN = @GNBKN, MGGNBRK = @GNBRK, MGMNGSY = @MNGSY, MGGNBCLR = @GNBCLR, MGGNBSRT = @GNBSRT WHERE (M_GENBA.MGOFFCD = @MGOFFCD) AND (M_GENBA.MGGNBCD = @MGGNBCD)">
    <UpdateParameters>
    <asp:Parameter Name="UPDDATE" />
    <asp:Parameter Name="UPDTIME" />
    <asp:Parameter Name="UPDPGM" />
    <asp:Parameter Name="UPDSYCD" />
    <asp:Parameter Name="GNBKJ" />
    <asp:Parameter Name="GNBKN" />
    <asp:Parameter Name="GNBRK" />
    <asp:Parameter Name="MNGSY" />
    <asp:Parameter Name="GNBCLR" />
    <asp:Parameter Name="GNBSRT" />
    <asp:Parameter Name="MGOFFCD" />
    <asp:Parameter Name="MGGNBCD" />
    <asp:SessionParameter Name="MGOFFCD" SessionField="loginoffcd" />
    <asp:SessionParameter Name="MGGNBCD" SessionField="selgenbacd" />
    </UpdateParameters>
    </asp:SqlDataSource>
親記事 /過去ログ20より / 関連記事表示
削除チェック/

■50042  Re[4]: ClickOnceがいまいちはやらない理由について
□投稿者/ れい -(2010/05/27(Thu) 07:17:44)

    企業の内製ソフトでは結構使っているのではないかしら。
    部署単位とかで使っているという話をよく聞きます。

    いわゆるフリーソフトの範囲の話でしょうか?


    開発側からみれば

    小さいソフトならexeをzipで十分で、インストーラーが要らない場合も多い。
    インストーラーが必要な場合はClickOnceじゃ足りない場合が多い。
    .Netでないとだめ。
    サーバーの準備もめんどくさい。
    証明書・署名関連もめんどくさい。
    慣れていない技術、普及するかわからない技術を学ばなくてはいけない。

    ユーザーとしては。

    勝手に更新されるのはイヤ。
    ネットに勝手に繋がれるのはイヤ。
    慣れていないインストール作業になる。

    という感じでしょうか。

    私も不特定多数が使うフリーソフトをClickOnceで配布する気にはなりませんし、
    ネット上の誰かが作ったソフトがClickOnceであったら使う気にはなりません。

    職場で使う特殊なソフトウェアはClickOnceで配布しています。
    でも今後は使わないかも。

    私の中では「ダメ技術」or「負け技術」扱いです。
記事No.49989 のレス /過去ログ84より / 関連記事表示
削除チェック/

■91226  Re[1]: C# CellValidatingイベントについて
□投稿者/ Hongliang -(2019/06/06(Thu) 16:14:03)
    今一つ全体が読み取れませんが、CellValidatingイベントの代わりにCellEndEditイベントを使用するのはどうでしょうか。
記事No.91225 のレス /過去ログ157より / 関連記事表示
削除チェック/

■91229  Re[2]: C# CellValidatingイベントについて
□投稿者/ su -(2019/06/07(Fri) 10:12:38)
    No91226 (Hongliang さん) に返信
    > 今一つ全体が読み取れませんが、CellValidatingイベントの代わりにCellEndEditイベントを使用するのはどうでしょうか。

    コメントありがとうございます。
    CellEndEditイベントを使用してみましたが、DataGridViewの特定のセルに値を入力しても、Enterキー押下時に元に戻ってしまいました。


記事No.91225 のレス /過去ログ157より / 関連記事表示
削除チェック/

■93614  Over句について
□投稿者/ 犬夜叉 -(2019/12/27(Fri) 09:08:56)

    分類:[.NET 全般] 

    以下のような日付と休みのデータ(DATETABLE)があり

    Date Yasumi
    :
    20191220 1 -4
    20191221 2
    20191222 2
    20191223 1 -3
    20191224 1 -2
    20191225 1 -1
    20191226 1 0
    20191227 1 1
    20191228 2
    20191229 2
    :

    今日(12/27)を境に平日で
    以下のように何日後、何日前を得る場合

    Date Offdate
    :
    20191220 -4
    20191223 -3
    20191224 -2
    20191225 -1
    20191226 0
    20191227 1
    :

    SELECT Date, ROW_NUMBER() OVER(ORDER BY Date) AS Offdate
    FROM DATETABLE
    WHERE Yasumi = 1
    AND Date >= 20191227
    UNION
    SELECT Date, 1 - ROW_NUMBER() OVER(ORDER BY Date DESC) AS Offdate
    FROM DATETABLE
    WHERE Yasumi = 1
    AND Date < 20191227

    で、求めたのですがUnionを使用しないで
    Over句のRowsを使用してできるような気がしたのですが
    できないのでしょうか?


親記事 /過去ログ162より / 関連記事表示
削除チェック/

■97237  VS2019 + Access MDBでエラーが発生
□投稿者/ てっちゃん -(2021/04/19(Mon) 09:13:46)

    分類:[ASP.NET (VB)] 

    いつもお世話になっております。
    下記の事象は既知の問題でしょうか?

    現在MS-Accessのテーブルのみを格納したMDBファイルとテーブル以外のVBA含めたaccdbファイルのシステムを
    使っております。
    今回LAN内でのWeb化をするためにVisual Studio2019を使いWebシステムを作ろうと考えています。
    これは以前(Visual Studio2005の頃)、Visual StudioでデータソースはAccessを使いシステムを構築したこと
    があったため久しぶりではあるもののおそらく同じように行けるのかなと思ったからです。

    【試したこと】
    Visual Studio2019 でデータソースをMS AccessのMDBを指定し、Gridでデータ編集、削除を可能に指定。
    デバッグすると一応データは表示されました。
    ところが編集モードでデータを変更、「更新」リンクを押すと下記メッセージが表示されます。
    これは削除も同様です。

    (エラーメッセージ ここから)----------------------------------------------------------------------

    '/' アプリケーションでサーバー エラーが発生しました。
    1 つ以上の必要なパラメーターの値が設定されていません。
    説明: 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。

    例外の詳細: System.Data.OleDb.OleDbException: 1 つ以上の必要なパラメーターの値が設定されていません。

    [OleDbException (0x80040e10): 1 つ以上の必要なパラメーターの値が設定されていません。]
    System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr) +1216113
    System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +256
    System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +216
    System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +60
    System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +164
    System.Data.OleDb.OleDbCommand.ExecuteNonQuery() +112
    System.Web.UI.WebControls.SqlDataSourceView.ExecuteDbCommand(DbCommand command, DataSourceOperation operation) +400
    System.Web.UI.WebControls.SqlDataSourceView.ExecuteUpdate(IDictionary keys, IDictionary values, IDictionary oldValues) +704
    System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary values, IDictionary oldValues, DataSourceViewOperationCallback callback) +106
    System.Web.UI.WebControls.GridView.HandleUpdate(GridViewRow row, Int32 rowIndex, Boolean causesValidation) +1244
    System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +917
    System.Web.UI.WebControls.GridView.OnBubbleEvent(Object source, EventArgs e) +92
    System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +37
    System.Web.UI.WebControls.GridViewRow.OnBubbleEvent(Object source, EventArgs e) +97
    System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +37
    System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e) +127
    System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +168
    System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +12
    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +15
    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +9858668
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1696

    (エラーメッセージ ここまで)----------------------------------------------------------------------

    あれこれ試したところ、どうもAccess側の主キーのフィールド名が日本語の場合に発生することがわかりました。
    ただ本当にこれが原因と特定が出来ない状況もありました。

    テスト用のテーブルを作成し、全フィールド名はアルファベットの場合は問題なし。
    主キー以外のフィールド名を日本語に変更しても問題なし。
    この流れで主キーのフィールドを日本語に変更しても問題なし。

    テスト用ではなく現在使用中のMDBの中のテーブルをコピーし、コピーしたテーブル内の主キーのみをアルファベットに変更すると問題なし。
    再度日本語に戻すとエラー発生。

    やっぱり主キーのフィールド名が原因なのかと思えそうですが、日本語に変更しても問題ないケースもあるのです。
    現在Accessのみで稼働しているシステムは複雑で主キーのフィールド名を変更するのもかなりの工数がかかる見込みです。

    皆様にアドバイスをいただきたいのが
    1.VS2019のデータソースがAccessの場合主キーのフィールド名は1バイト英数字にするべきか?
    2.Webシステムで使用するAccessのテーブルのクローンを作成するようなことは可能か?(この場合フィールド名は1バイト英数字)
    3.現在のテーブルはそのまま使えるが、何か設定が悪いのか?


    ご教授のほどよろしくお願いいたします。
親記事 /過去ログ169より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -