ほげほげ見聞録

技術メモ、備忘録、使い方はそのうち覚える

ASP.Netのメモ

ASP.Netを使うことがあったので、その時に詰まった部分のメモ。ほんと只のメモ。

.aspx側で対応する.csのプロパティ表示

.csのクラスのプロパティをpublicで宣言(privateだとダメ)。

  • エスケープする<%: Id %>
  • エスケープしない:<%= Id %>

URLパラメータ取得

Request.Querystring["param"]を使う。
「?param=」がないとnullになる。
How to get parameter in url ( by C# for .net) | The ASP.NET Forums

URLに危険な文字列を入れた場合

例えば「http://【パス】?【クエリ】=<script>alert()<」を入力してアクセスすると、以下のエラー発生。
HttpRequestValidationException (0x80004005): 危険な可能性のある Request.QueryString 値がクライアント (ak="<script>alert()<") から検出されました。

このエラーはRequest.Querystringを取得する部分でtry-catchしても引っかからない。
Global.aspxの方でcatchする必要があるらしい。
c# - How to catch HttpRequestValidationException in production - Stack Overflow

Console.Write()が出力ウィンドウに出ない

今回はWebアプリだったので、出力できないらしい。
c# - Console.WriteLine does not show up in Output window - Stack Overflow
Possible to output to console from within a class library C#? - Stack Overflow

VS起動時エラー

Visual Studio は例外を検出しました。拡張機能が原因である可能性があります。」

C:\Users\【ユーザ】\AppData\Roaming\Microsoft\VisualStudio\14.0\ActivityLog.xml
    <type>Error</type>
    <source>Editor or Editor Extension</source>
    <description>System.IO.FileNotFoundException: &#x30D5;&#x30A1;&#x30A4;&#x30EB;&#x307E;&#x305F;&#x306F;&#x30A2;&#x30BB;&#x30F3;&#x30D6;&#x30EA; &apos;Microsoft.VisualStu→dio.Data.Tools.Delta.UI,


Tmp削除すると直るという情報があったが、Tmp削除後もエラー出る。
Visual Studio が起動時にエラーがでるようになった&直した - Qiita

結局、インストーラで修復実行したらエラー消えた。
c# - Could not load file or assembly 'Microsoft.VisualStudio.Data.Tools.SqlEditor.dll' - Stack Overflow

GridViewのページングリンク

自動でページングリンクを作成するが、リンク押下時のイベントを設定しておかないとエラーが出る。
勝手に作ってくれないの…。

「GridView 'GridView1' はハンドルされていないイベント PageIndexChanging を送出しました。」
OnPageIndexChangingの設定を.aspxと.csに追加。