nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

CodeZineさんで「実践WPF業務アプリケーションのアーキテクチャ」という記事を書かせていただきました。

CodeZineさんで「実践WPF業務アプリケーションのアーキテクチャ」という記事を書かせていただきました。 実践WPF業務アプリケーションのアーキテクチャ ~ マイクロソフト公式サンプルデータベースAdventureWorksを題材に 概要編 実装編 マイクロソフトさん…

Microsoft Edgeで右クリからGoogle検索する方法

方法は簡単で、Edgeのデフォルトの検索プロバイダをGoogleに変更するだけでいつの間にかできるようになっていました。 と思ったのもつかの間、この機能は2018年7月29日現在、無くなっているようです。 現在は、こちらの記事にあるような、野良拡張を入れるし…

SimpleInjectorでCastle.Core DynamicProxyを適用する拡張ライブラリを公開しました

表題の通りですが、SimpleInjectorでCastle.Core DynamicProxyを適用する拡張ライブラリをNuGetに公開しました。 www.nuget.org こんな感じでつかいます。 var container = new Container(); container.InterceptWith<IncrementInterceptor>(x => x == typeof(Target)); container.</incrementinterceptor>…

Dapper.FastCrud.ModelGeneratorで数字始まりのカラムに対応する

Dapper.FastCrud.ModelGeneratorを利用することで、DapperおよびDapper.FastCrudから利用できるテーブルに対応するクラスを手軽に作成することができます。 Dapper.FastCRUD:ModelGeneratorを使う - nuits.jp blog しかし、標準のテンプレートではデータベ…

Dapper.FastCrud.ModelGeneratorでスキーマ名を明示的に指定する

Dapper.FastCrud.ModelGeneratorを利用することで、DapperおよびDapper.FastCrudから利用できるテーブルに対応するクラスを手軽に作成することができます。 Dapper.FastCRUD:ModelGeneratorを使う - nuits.jp blog しかし標準のテンプレートではスキーマ名…

Dapper.FastCRUD関連エントリー:目次

Dapper.FastCRUDは、Dapperの拡張ライブラリです。Dapper単体では提供されない範囲のCRUDについてのサポートを提供します。 本エントリーは、当ブログで記載した Dapper.FastCRUD 関連のエントリーの目次となります。今後も不定期に更新していきます。 Dappe…

Dapper.FastCRUD:ModelGeneratorを使う

Dapper.FastCRUDはDapperのExtensionライブラリです。DapperのExtensionライブラリは多数ありますが、以前に簡単に比較記事を書いていますので、良かったらご覧ください。 Dapperの拡張ライブラリは何がいいのか?ちょっとだけ調べてみた - nuits.jp blog Da…

新しめのSQL ServerでサンプルDB Northwind・pubsを使う方法

古めのサンプル DB の Northwind と pubs ですが、特に Northwind は簡単なテストに使いたい時がままあります。つぎのリンクからダウンロードするとmdfファイルが含まれているのですが、互換性の問題でそのままアタッチすることができません。 https://www.m…

リモートのIISへVisual StudioからWebアプリをWeb Deployする

本エントリーでは Visual Studio 上で ASP.NET などで実装した Web アプリケーションをリモートの IIS 上に公開する方法を記載します。 毎回忘れてしまうんですよね… オンプレミス環境でTFSなどから自動ビルド・自動配置するときにも、この設定が適用できま…

SQL Server でサンプルDBを利用する

SQL Server では公式のサンプルデータベースがGithubで複数公開されています。 github.com 本エントリーではSQL Serverのインストールから、サンプルデータベースの「Adventure Works 2017」を利用する方法について解説します。 ちなみに Adventure Works は…

【連載】ASP.NET Web API を使おう:第6回 Castle.Core DynamicProxy で AOP

本エントリーは連載「ASP.NET Web APIを使おう」の第3回となります。連載の目次はこちら。 www.nuits.jp さて今回はWeb APIでもAspect Oriented Programing(AOP)をする為、Simple Injector 上でCastle.CoreのDynamicProxyを利用する方法を解説します。実際…

【連載】ASP.NET Web API を使おう:第5回 統合 Windows 認証を利用する

本エントリーは連載「ASP.NET Web APIを使おう」の第3回となります。連載の目次はこちら。 www.nuits.jp さて今回は、Web API の利用にあたり統合 Windows 認証を適用する方法を説明します。

【連載】ASP.NET Web API を使おう:第4回 Simple Injector(DIコンテナ)を適用する

本エントリーは連載「ASP.NET Web APIを使おう」の第3回となります。連載の目次はこちら。 www.nuits.jp これまでWeb APIを作成し、swagger-codegenを使って生成したクライアントから、作成したAPIを呼び出す方法について説明してきました。 今回はWeb APIつ…

【連載】ASP.NET Web API を使おう:第3回 swagger-codegenでクライアントコードを生成する

本エントリーは連載「ASP.NET Web APIを使おう」の第3回となります。連載の目次はこちら。 www.nuits.jp さて第1回・第2回でWeb APIを作成し、SwaggerのAPIドキュメントを公開する方法を解説してきました。今回は、これまで作成したWeb APIに対してswagger-c…

【連載】ASP.NET Web API を使おう:第2回 Swaggerを適用する

本エントリーは連載「ASP.NET Web APIそ使う」の第2回となります。連載の目次はこちら。 www.nuits.jp さて今回は、第1回で作成したWeb APIに対してSwaggerを適用します。 SwaggerとはRESTfulなAPIを管理する多岐にわたる成果物群のことで、API仕様記述の標…

【連載】ASP.NET Web API を使おう:第1回 Web APIを作成する

本エントリーは連載「ASP.NET Web APIを使おう」の第1回となります。連載の目次はこちら。 www.nuits.jp 今回はWeb APIのサーバーサイドの実装について説明します。

【連載】ASP.NET Web API を使おう:はじめに&目次

ASP.NET Web APIは、ASP.NET上でRESTfulなサービスを提供するための仕組みです。 .NETの世界ではWCFを利用してRESTfulを実装することもできました。しかしWCFは元々SOAPベースのWebサービスが起点となっており、多数のプロトコルを提供可能なフレームワーク…

IIS ExpressでWindows統合認証を有効にする

Visual Studioで開発中にデバッグする際、デフォルトではIIS Expressが利用されます。 その際に匿名認証を無効にし、Windows統合認証を有効にする方法を記載します。

ASP.NET MVC 5でAutofacを使う

ASP.NET MVC 5で、DI ContainerのAutofacを使う方法を簡単に記載したいと思います。

App.configの接続文字列情報から実装クラスを指定せずにをDbConnectionを生成する方法

SQL

データベースへのコネクションを生成する場合、次のような実装はソースに接続対象のDBへの依存を持ち込んでしまいます。 using(var connection = new SqlConnection(...)) App.configの接続情報を利用して、それを回避することができます。自分でもしょっち…

Dapperの拡張ライブラリ 比較検討

皆さん、Dapper使っていますか? 私は比較的最近まで、オレオレMicro ORMを使っていたので、あまり使っていませんでしたが、いろいろと反省してDapperに移行中です。 さてDapper非常に良いと思うのですが、単品だとさすがに実装効率があまりよろしくありませ…

Prism for WPF で非表示となったViewのインスタンスを破棄する設定

Prism for WPFではRegionという機能を利用することで、画面遷移実装する事ができます。具体的にはこちらをご覧ください。 さて、Regionを利用して画面遷移した場合、デフォルトの振る舞いではViewやViewModelのインスタンスは、一度生成されると以後はキャッ…

App Center Analyticsを使い倒す - 静的コード生成を活用したXamarinにおけるAOP活用

本エントリーは、つぎの二つの機会に発表した内容をまとめ直したものです。 JXUGC #24 春の App Center 祭り de:code 2018 資料はこちらに公開しています。ただスライドは発表の補助資料な為、資料だけ見ても伝わり切りませんので、本エントリーもあわせてご…

良さげなDI Containerの比較記事を見つけた

英語のブログですが良さげな比較記事を見つけました。 www.palmmedia.de 私が知らなかっただけで、DI Containerのパフォーマンス評価としては著名なもののようですが。 github.com 個人的にDI Containerへ基本機能や安定性は大前提として、つぎのような条件…

Infragistics Web Day 2017に参加してきました

表題の通りですが、Infragistics Web Day 2017に参加してきました。 connpass.com ここ数年(多分8年とか?)まともにWebシステム開発に携わって来なかったのですが、今後ノータッチという訳にもいかないし、特にWebフロントエンドの知識の最新化は、今期の…

XamarinでもAOPしたい! Fody&Mono.Cecil編

さて前回、Mono.Cecilを利用した静的なAOPについて解説しました。 今回はいよいよXamarin.iOSでも動作する、静的なAOPの実装について解説したいと思います。Mono.Cecilを使ってILを織り込むFodyのアドインを作成し、コンパイル時に自動的にILを織り込むとこ…

XamarinでもAOPしたい! Mono.Cecil編

さて前回、Cauldron.Interception.Fodyを利用すればXamarinでもAOPできるんだけど、仕様が好みじゃないので作るしかないな!というお話をしました。 IL弄ってアスペクトを織り込むアドインを作成するわけですが、ILを弄ると言うと黒魔術のように感じるかもし…

XamarinでもAOPしたい! Cauldron.Interception.Fody編

前回XamarinでAOPするにはIL弄るライブラリを自作するしかないと言ったな? あれは嘘だ。Cauldron.Interception.Fodyを使えばできる。 www.nuget.org なんてこった…まぁ皆さんには朗報ですしょう。私は赤面の限りですが。 という訳で、今回はCauldron.Interc…

XamarinでもAOPしたい! 希望編

この記事は [初心者さん・学生さん大歓迎!] Xamarin その1 Advent Calendar 2017 の6日目の記事です。 qiita.com 空いたままだったのが忍びなく埋めようと書いた記事なので、完成まで到達できていませんがその辺はご容赦ください。 予定では25日の本チャン…

Visual Studio 2017 version 15.5でXamarin関連のアップデートが神すぎる

今日、Visual Studio 2015の新しい更新(15.5)が来ましたね。 今回はXamarin関連でも非常に魅力的なアップデートが来ていますので簡単に紹介しておきたいと思います。