ひっそりと生きるプログラマのブログ

日頃気になった事なりを書き留めるブログです。関心ごとは多くもう少し更新頻度を上げたいところです。

.NET Framework

【Entity Framework】テーブルの主キーの値を渡して、レコードを取得する方法(ナビゲーションの値も含む)

以下のような実装で取得可能。次の実装は呼び出し元SampleTable というテーブルがあり、 主キーに相当するプロパティが SampleId になります。 SampleSubTable と SampleTable はナビゲーションプロパティが定義しています。 static void Main(string[] args…

【Entity Framework】Set やら Find やら使って、ナビゲーションプロパティも含めてDBから取得する方法

調べた結果、できそうな雰囲気。 眠いので今週中位に記事を書く予定。EntityType から、いろいろな情報が取得できるので、 面白い事ができそうです。DB(SQL Server や Oracle)に、 依存しない形で汎用的な部分を作りこめるのはうれしいですね。

【ASP.NET MVC】モデルのバインドに関して (2)

前回投稿した記事で、 モデルのバインドに関して調べました。 saboten-sakura.hatenablog.com以下のように複数の Name が存在した場合。 @using (Html.BeginForm("Send", "Home", null, FormMethod.Post)) { <input type="text" name="a" /> <input type="checkbox" name="a" value="true" /> <input type="hidden" name="a" value="false" />

【ASP.NET MVC】モデルのバインドに関して

ポストする時に同じ name があった場合、 どのような挙動となるのか確認しました。 ※自分自身のメモです。時間も遅いのでわかり辛かったらすみません。。。次のような Controller と View があるとします。 public class HomeController : Controller { publ…

ASP.NET MVC モデルバインド時に DataAnnotation を実行しない方法

タイトルの通り、モデルバインド時に、 DataAnnotation を実行しない方法です。DataAnnotationsModelValidatorProvider を、 ModelValidatorProviders.Providers から取得し削除します。 using System.Linq; using System.Web.Mvc; public class MvcApplicat…

C# 6.0 文字列補間 (String interpolation)

仕事上、使う事がほぼないので、 思い出したようにいろいろと勉強しています。面白いと感じた機能は多いのですが、 これはそのひとつで「文字列補間」です。 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args…

ASP.NET Responsive Design について

今更ですが、ちゃんと知っておこうという事で実践しつつ、 学習を進めていこうと思っています。学習を始める前に、私の環境は以下の通り。 Visual Studio 2015 Community ASP._NET MVC5 jQuery version = 1.9.1 bootstrap version = 3.3.7 試しに、最小の構…

ASP.NET MVC の Json形式へのシリアライズ(JsonResult)

ASP.NET でアクションメソッドの結果として、 Json形式を返す場合、ControllerクラスのJsonメソッドの返り値を返します。その際に、内部ではどのように Json化しているのか、気になったので少し調べてみました。 調べた際のアセンブリおよびバージョンとクラ…

ASP.NET MVC View の関数化(@helper)

同じビューで似た処理が複数あるな。 とか 部分ビューにする程ではないけど、他のビューでも似たような処理をしているな。とか、View作成中に似たり寄ったりの View があった際に、 共通化なりできないかで調べました。 共通化については拡張メソッドにて対…

C# 6.0 + Auto-property enhancements

思い出したように書いてみる。 自動実装プロパティが強化され、 プロパティに初期値が設定出来るようになった。Auto Property Enhancements in C# 6 | | InformIT以下のような実装となるので、 慣れない家は「????」となってしまうかも。 個人的には定義…

SelectListItem へ object から変換

必要となったので個別に記載。 Value と Text の値はリフレクションで取得し設定する。 private static SelectListItem ToSelectList( object item, string text, string value) { // 引数が null の場合はエラーとする。 if (null == item) throw new Argum…

SelectListItem へ KeyValuePair<TKey, TValue> から変換

必要となったので個別に記載。 private static SelectListItem ToSelectList<TKey, TValue>( KeyValuePair<TKey, TValue> item) { return new SelectListItem() { Value = Convert.ToString(item.Key), Text = Convert.ToString(item.Value) }; }</tkey,></tkey,>

ASP.NET MVC - object から IDictionary<string, object> へ変換

View で側で利用する拡張メソッドを実装していると、 記述する際に任意の属性を指定したい場合があります。その場合、HtmlHelper クラスの AnonymousObjectToHtmlAttributes メソッドを使用します。 HtmlHelper.AnonymousObjectToHtmlAttributes メソッド (S…

ASP.NET MVC 拡張メソッド - 2

昨日の続き、Xml形式ではなく、Base64形式の方が無難。 ※ViewStateをイメージして頂くと分かり易い。 public static MvcHtmlString ToSerialize(this HtmlHelper value, string name, object item) { if (null == item) return InputExtensions.Hidden(value…

ASP.NET MVC 拡張メソッド - 1

シリアライズしたいと思ったので一先ずこんな感じで。 ただ、正常に動かないので明日とかちゃんとしたのに修正するかも。 public static MvcHtmlString ToSerialize(this HtmlHelper value, string name,object item) { if (null == item) return InputExten…

Visual Studio 2010 Express + ASP.NET MVC 4 (RadioButtonList)

最近、意気揚々と触っている最中。 支援クラスのようなものも探していて、素敵なのがあってので検証も必要だけどリンクだけ。stackoverflow.com

テーブル値パラメータを勉強する予定

ユーザー定義テーブル型とかテーブル値パラメータとか今更ながら少し触ってみようと思うけど、 周りの方に布教する際に「よく分からないから使わない」とならないよう気をつけないとですね。

PowerShellでIPアドレスを取得しクリップボードへコピーする

以下のような感じでできます。 今日は寝ますが、続きで、"ホスト名"や"MACアドレス"も取得するようなコードを載せたいと思っています。 $IPAddress = [System.Net.Dns]::GetHostAddresses([System.Net.Dns]::GetHostName()) | where { $_.AddressFamily -eq …

PowerShellでILを使ってexeを作ってみる

たまにこういうコードを書かないと忘れるので少し書いてみます。 需要はありませんが、こんなことも出来るっていう参考になれば幸いです。 function Hello-World-Il() { $domain = [System.AppDomain]::CurrentDomain $assemblyName = New-Object System.Ref…

PowerShellで任意のユーザーアカウントを取得する

前回は任意のグループ情報を取得しました。 今度は、任意のユーザー情報を取得します。 [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices") [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices.Accou…

PowerShellで任意のユーザーグループを取得する

メンバーを見るに、FindOneを使うのが正解? [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices") [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices.AccountManagement") function Get-Group($conte…

PowerShellでユーザーアカウントを追加する

眠いので書き直すけど、ソースだけ一先ず。書き直しました。先日は酷かった。。。 と、伴って命名仕方とかもちょっと工夫。こっちの方がしっくりくる。 [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices") [void][reflection.as…

PowerShellでユーザーグループの一覧を取得する

前回に引き続きです。saboten-sakura.hatenablog.com今度は、ローカルのユーザーグループ一覧を出力。 ほぼほぼ似たり寄ったりな実装ですw [void][reflection.assembly]::LoadWithPartialName("System.DirectoryServices") [void][reflection.assembly]::Lo…

PowerShellでユーザーアカウントの一覧を取得する

最近、必要な機会があったので、調べながら書いてみました。前提として、 ・PowerShellが実行可能な設定となっていること。 ・実行ユーザーがアカウントの取得などが可能なこと。書き方と仕組みさえ分かれば容易に記述出来るので素敵。 また、以下は取得して…

Visual Studio 2015 RC に TypeScript の プラグラインを入れてみる

Visual Studio 2015 の RC 版をインストールした理由として、 幾つかやりたい事があります。その一つが色々と噂に聞く TypeScript です。後々のためのメモとして、いかに簡単な手順を記載します。以下の公式ページからダウンロードします。TypeScript 1.5bet…

CommonLibrary.NET を使ってみる - 2 by CSV

CommonLibrary.NET を使ってみる by CSV - ひっそりと生きるプログラマのブログsaboten-sakura.hatenablog.com以前に少し試したものの続き。 Csv クラスには静的なメソッドとして、 CanLoad メソッドがあります。 何をしてくれるかというと、名前の通りでロ…

自動実装プロパティの強化

C#6.0 から↓のような実装が可能となりました。 public class Sample { public string Hoge1 { get; set; } = "aaaaa"; } 自動実装プロパティはとても好きなんですが、 初期値を設定するといった場合、あまりスマートな方法はありませんでした。それが前述し…

Null 条件演算子

かなり出遅れた感がありますが、 最近、やっとこ自宅で C#6.0を触り始めました。その中で、面白いなと感じたのが「Null 条件演算子」 C# - The New and Improved C# 6.0これを使う事で、「null か否か評価して、null以外の場合はあるメソッドを呼んで、null…

プリンタ関連 - 2

プリンタ関連 - 1 - ひっそりと生きるプログラマのブログsaboten-sakura.hatenablog.com前回に引き続き、試して確認したことを元に幾つかを追記!! DsDriver キー DsDriver キー 配下の各項目と値です。 名前 型 説明 printColor REG_BINARY 色(はい or い…

プリンタ関連 - 1

プリンタについて - ひっそりと生きるプログラマのブログsaboten-sakura.hatenablog.comと意気込みがあったので、レジストリの情報を取得するサンプル。 一部分だけですが、他にも色々と取得可能です。 その辺は徐々に記載して行ければと思います。 using Sy…