2021-02-01から1ヶ月間の記事一覧
■関数等の引数にジェネリッククラスを指定する際の定義方法 ・例として以下のようなジェネリッククラスをメソッドの引数に指定する。 Public Class TData(Of T As New) End Sub ・定義方法 Function/Sub 関数名(ジェネリック)(関数の引数) ・例 Function Exp…
属性は、ClassやMethod、property等に、任意のパラメータを追加することができる。 追加した内容をリフレクションで読取、使用することが可能。 例えば以下は、TClassの各Propertyに、画面に表示する際の列名、Export時のヘッダ名、 また、出力の有無といっ…
DebugDisplay属性を指定する事で、Debug時にウォッチで 当該クラスを見たときに、展開せずとも内容を表示することができる。 (例)<DebuggerDisplay("{UserId} {UserName} {UserPassword}")>Public Class TUserInfo Implements ITData ↓ウォッチ画面では、展開せずとも内容が表示される</debuggerdisplay("{userid}>
自フォーム内に定義しているメソッドへのリフレクションは、 MeのGetTypeを取得することで可能。 ただし、対象のメソッド名がPublicでないと、何故か取得できない。。 自フォーム内じゃなくてClassに定義しておけばようのでしょうが。 Dim typ As Type = Me.…
テーブルの更新履歴データ等を残したい場合は、トリガを使うのが 一番早い。 ■イメージ ・履歴を残したいテーブルの履歴テーブルを作る。 このテーブルのフォーマットは、元テーブルのレイアウト プラス、追加で残したい任意の情報(更新された日時、UpDateか…
ストアド呼出自、そのCommandParametersにNothingを渡した場合、 以下のエラーが発生する。 実行時に"プロシージャまたは関数 'XXX' にはパラメーター '@YYYYY' が必要ですが、指定されませんでした。 Nullをセットしたい場合は、ParameterにDBnull.Valueを…
■XDocumentを使う 以下は、xml内の指定のNodeの値をListで取得する例 xDoc as XDocument = new XDocument.Load(importFilePath) xDoc.Elements("mappings").Elements("mapping"). Select(Function(x) x.Attribute("ColumnName").Value).ToList <以下のような…
tBase:構造体を持つクラス ’---フィルタ条件を作成 Dim flag As BindingFlags = BindingFlags.Public Or BindingFlags.Instance Or BindingFlags.Static Or BindingFlags.FlattenHierarchy '---構造体のインスタンスを生成(インスタンスからじゃないとフィ…
SelectedTextは、どんなコントロールであれ選択されたテキスト部分が返される。 よって、DropdownListはテキストの部分選択ができない為、常に””が返される。 Comboboxの入力チェックは、SelectedValueやSelectedIndexなどで臨機応変に行う。 例えば、コンボ…
■クラス名の直後に、型パラメータを指定する形で宣言 ・Public Class クラス名(Of 型パラメータ AS 制約) (ex) Public Class TestClass(Of T As New)
■メソッド名の直後に、型パラメータを停止する形で宣言 ・Sub/Function メソッド名(Of 型パラメータ)(引数) (ex) Sub TestMethod(Of T1, T2)(ByVal dic As Dictionary(Of T1, T2))
(*)exeと同フォルダにResourceファイルがある事を前提 ①exeのフォルダを取得:System.Windows.Forms.Application.StartupPath②①を絶対パス化:Path.GetFullPath(①)③②にResourceを結合:$"{②}\Resouce"
IsNullOrWhiteSpace:NULL、Empty、空白をTrue IsNullOrEmpty:NULL、EmptyをTrue ” ”:空白を許容するかどうか。
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
Imports System.Data.SqlClientPublic Class TDInsUserInfo Inherits BaseDAO Private Const SP_NAME As String = "spInsertUserInfo" Private ReadOnly _tCls As TUserInfo Sub New(ByVal tCls As TUserInfo) MyBase.New _tCls = tCls End Sub Protected Ov…
ALTER PROCEDURE [dbo].[spInsUserInfo] @UserId VARCHAR(10) ,@UserName NVARCHAR(255) ,@UserPassword VARCHAR(50) ,@UserGrant INT ,@UserStatus INT ,@CreateUserId VARCHAR(10) ,@CreateTimeStamp DATETIME ,@ErrorCode INT OUTPUT ,@ErrorText NVARCHA…
Null許容且つ値がNothingのオブジェクトに下記のような判定処理をした場合、 掲題のエラーとなる。 If Not String.IsNullOrEmpty(TestCreateTimeStamp) TestCreateTimeStamp.ToStringとすればOK。
■仮想メソッド ・実装を持つが、子クラスでOverride可能なメソッド。 Public Overridable Sub TestMethod() Console.WriteLine("仮想メソッド") End Sub Public Overridable Property TestProperty As String = "仮想property" ■抽象メソッド ・実装を持たな…
'単一項目しか持たないListのソート Dim wList2 As New List(Of String) wList2 = wList2.OrderBy(Function(x) x).ToList (*)Sortした値をリストやDGVのデータソースにセットするなら、ToList! ’複数項目あるリストを指定項目でソート Dim orderByList = li…
Dim column As New DataGridViewButtonColumn() ’ButtonのTextpropertyに設定した値を可視化する。 column.UseColumnTextForButtonValue = True column.Text = "選択" column.Name = "SelectButton" column.Width = 50 'DataGridViewに追加 .Insert(追加位置…