いろいろ備忘録日記

主に .NET と Python絡みのメモを公開しています。

C#

XAMLデザイナでViewModelが存在しないと言われた場合のメモ

忘れない内にメモメモ。 最近、Mac上でParallelsを動かしてVisual Studio 2013で開発しているのですが、WPFアプリを作っていてViewModelをXAML上で <Window.DataContext> <local:MainViewModel /> </Window.DataContext> とかすると、「MainViewModelが存在しません。」というエラーが表示されました。ちゃんとクラスはあるの…

DevExpress奮闘記-126 (Assembly Deployment Tool, 配布時に必要なDLLを選択してくれるツール)

いつのバージョンからなのかは分かっていないのですが、VisualStudioのメニューに現れる「DevExpress」メニューに、「Assembly Deployment Tool」というのが追加されています。忘れない内にメモメモ。 「DevExpress」-> 「All Platforms」 -> 「Assembly Dep…

PerfTips (VisualStudio 14 CTP3, 処理速度計測, CPUタイム)

つい先日、VisualStudio 14 CTP 3がリリースされました。 http://blogs.msdn.com/b/visualstudio/archive/2014/08/18/visual-studio-14-ctp-3-released.aspx いろいろ機能追加が行われているのですが、その中に PerfTips という機能が追加されています。 htt…

Visual Studio 2013 keyboard shortcuts The complete list (VS2013, キーボードショートカット, gitまわりのショートカットキー)

C#

Visual Studio 2013のキーボードショートカットが山ほど載ってるサイトが あったのでメモメモ。これすごい助かる。こんなにショートカットあったんだ。 Visual Studio 2013 keyboard shortcuts The complete list http://visualstudioshortcuts.com/2013/ Vi…

.NET クラスライブラリ探訪-069 (System.ArraySegment<T>, 部分配列の作成)

C#

今回は、System.ArraySegment構造体についてメモ。 このクラス、.NET 2.0の頃からずっと存在している構造体です。 なにを表す構造体かというと、元となる配列の一部分を表現する部分配列を 構成します。 例えば、[1, 2, 3, 4, 5]という配列があって、その配…

DevExpress奮闘記-125 (CodeRush Unit Test Builder, UTB, ユニットテスト自動作成)

ちょっと前の情報になってしまいますが、CodeRush のバージョン 13.2 から Unit Test Builder という機能が追加されました。名前のままユニットテストを作成してくれる機能です。 公式のブログにて紹介されています。 New in CodeRush 13.2: Unit Test Build…

BindingOperations.EnableCollectionSynchronizationについて (.NET 4.5, WPF, 非UIスレッドからアクセス)

.NET 4.5 からWPFに以下のメソッドが追加されました。 public static void EnableCollectionSynchronization( IEnumerable collection, Object lockObject ) public static void EnableCollectionSynchronization( IEnumerable collection, Object context, …

Visual Studio Online でのプロジェクト削除方法

C#

ちょっと分かりにくかったので、忘れない内にメモメモ。 作成したプロジェクトを削除するのは、Webから出来ます。 まず、普通にログインして、Visual Studio Onlineのユーザページを表示。 右上の車輪みたいなボタン(たぶん設定ボタン)をクリック。 管理画…

WinFormsでターゲットをx64にしてるとデザイナが開けない場合がある

先日、いきなり発生して解決するまで時間かかったので忘れないようメモメモ。 WinFormsでアプリを開発していて、いきなりデザイナが開けなくなった事象が発生. 継承フォームとユーザコントロールのデザイナが開けなくなりました。デザイナを開こうとすると以…

VisualStudioプロジェクトプロパティの「32ビットの優先」チェックボックス

たまに忘れてて、あれ?ってなるのでメモメモ。 いつからこのオプションが追加されたのか、VisualStudio 2013でプロジェクトのプロパティページに「32ビットの優先」というチェックボックスが追加されています。 このチェックボックスですが、プロジェクトの…

タスク並列ライブラリ入門記-008 (Taskから結果を取得, Task.Result)

C#

タスクからの結果取得について。 タスクから結果を取得するにはタスク生成時にFuncオブジェクトを指定します。 その後、実行してResultプロパティを参照すれば結果が取得できます。 非同期処理なので、当然まだ処理が完了していない場合があります。 その場…

Dapperの簡単な使い方メモ (Dapper .NET, Micro ORM, 速い)

C#

ひょんなことで、Dapperのサンプルを書いたので、もったいなのでメモメモ。 便利なので、大好きですこのライブラリ。 Dapper .NETのサンプル 過去の記事については、以下のページからご参照下さい。 いろいろ備忘録日記まとめ http://sites.google.com/site/…

SQLiteの書き込み速度をアップさせる (System.Data.SQLite, SyncMode, JournalMode, PRAGMA)

忘れないようメモメモ。 SQLiteさんは、そもそも速度が速いのですが書き込み速度をさらにアップさせたい時があります。 (データがもの凄い速さで流れてきて、それを出来るだけ遅延なく書き込みしたいときとか) 書き込み速度をアップさせるのに、すぐ適用でき…

タスク並列ライブラリ入門記-007 (TaskのDisposeについて, Task.Dispose)

C#

ずっと気になっていた事の答えがMSDNのブログに載っていたので 忘れないうちにメモメモ。 TaskクラスはIDisposableを実装しています。 なので、Disposeメソッドが定義されているのですが 通常、これを呼んでいるソースを見たことがありません。 (私自身も呼…

タスク並列ライブラリ入門記-006 (TaskCreationOptions.LongRunning, 長時間実行されるタスクであることを示すオプション, オーバーサブスクリプション)

C#

Taskには、作成時にTaskCreationOptionsを指定することができます。 その中に、 TaskCreationOptions.LongRunning という項目があります。文字通り長時間処理されるタスクの場合に 指定する項目なのですが、これを指定すると場合によっては、タスクスケジュ…

.NET クラスライブラリ探訪-068 (System.Dynamic.DynamicObject, 動的オブジェクトの作成)

C#

だいぶ前に .NET クラスライブラリ探訪-034 (System.Dynamic.ExpandoObject)(動的オブジェクト構築, dynamic, 4.0) http://devlights.hatenablog.com/entry/20100530/p1 という記事を書いていて、System.Dynamic.ExpandoObjectについては 記述していたのです…

タスク並列ライブラリ入門記-005 (Task.Run, .NET 4.5から追加されたタスク開始方法)

C#

.NET 4.5からタスクの開始方法に新しいメソッドが用意されました。 Task.Run(...) // ActionとかFuncとかCancellationTokenとか Task.Run メソッド http://msdn.microsoft.com/ja-jp/library/system.threading.tasks.task.run(v=vs.110).aspx .NET 4.0のとき…

.NET クラスライブラリ探訪-067 (System.Threading.CancellationTokenSource, CancelAfter, .NET 4.5から追加されたメソッド)

C#

.NET 4.5にて、CancellationTokenSourceクラスに以下のメソッドが追加されました。 CancellationTokenSource.CancelAfter メソッド CancelltionTokenSourceやCancellationTokenについては 以前に記事を書いておりますので、そちらを参照下さい。 .NET クラス…

別のアセンブリでinternalクラスを見えるようにする (InternalsVisibleTo, 属性, AssemblyInfo.cs)

C#

基本的な事なんですが、何回も忘れるのでメモメモ。 単体テスト(MS-Test)を作成する際、テスト対象のクラスがinternalだと 通常見えないのですが、InternalsVisibleTo属性を付与することで みえるようになります。 InternalsVisibleTo属性はassemblyに対して…

LINQ to CSV (CodeProject, CSVデータをLINQで扱うライブラリ, LinqToCsv)

C#

CodeProjectに LINQ to CSV library http://www.codeproject.com/Articles/25133/LINQ-to-CSV-library という記事があったので、メモメモ。 ついでにちょっとサンプル書いてみました。使いやすいですね。 ライブラリ内の各クラスについては、上記記事内で詳…

ビジネスアプリケーション向け .NET テクノロジガイド (MSDN, PDF, 要約版と通常版)

C#

Microsoftから「ビジネスアプリケーション向け .NET テクノロジガイド」という文書が 公開されていたので、メモメモ。 通常版と要約版があります。 以下のページからPDFがダウンロードできます。 .NET ホーム http://www.microsoft.com/ja-jp/net/ このペー…

DevExpress奮闘記-124 (PDBファイルがダウンロード可能に, DXperience以上のライセンス必要)

Debugging DevExpress code with PDB files http://community.devexpress.com/blogs/ctodx/archive/2013/08/22/debugging-devexpress-code-with-pdb-files.aspx PDBファイルがダウンロード可能になりました。 ただし、DXperience以上のサブスクリプションラ…

公開キートークン(Public Key Token)の調べ方 (厳密名ツール, SN.exeを利用)

C#

よく忘れるので、忘れた時に見つけられるようメモメモ。 たまに公開キートークン (Public Key Token) の値を知る必要がある場合があります。 その場合、いろいろ方法があるとは思いますが、厳密名ツールである SN.exe を利用して調べる事も出来ます。 以下の…

DevExpress奮闘記-123 (TestCafeリリース, Web Test Framework, 非商用利用は無償)

DevExpressから、Web Test Frameworkである「Test Cafe」がリリースされたみたいです。 非商用利用は無償との事。商用利用はライセンスを購入する必要があります。 また、Universalサブスクリプションに含まれています。 Announcing TestCafé http://www.dev…

Protocol Buffersを利用してC#とJava間でデータ連携するサンプル (protobuf-net, protoc, protogen)

忘れない内にメモメモ。 Protocol Buffersの説明自体はWikipediaさんなどに分かりやすく記述されています。 Protocol Buffers http://ja.wikipedia.org/wiki/Protocol_Buffers 本家のProtocol Buffersでは、C++とJavaとPythonに対応しています。 C#から利用…

DevExpress奮闘記-122 (v2013.1よりSpreadsheet Controlが追加, スプレッドシート)

久しぶりのDevExpressメモ。 もう少ししたらリリースされる、13.1 (v2013.1) に、ついにスプレッドシートコントロールが追加されるみたいです。 業務では、頻繁に利用するものなので、個人的に期待大です。 当面は、WinForms限定??なのかな。 WinForms Sprea…

SyncfusionのSuccinctly Eブックシリーズ (PDFとKindle版あり, 無償, Free E-Book)

ESSENTIAL STUDIOで有名なSyncfusionさんが無償で提供してくれている SuccinctlyシリーズというEブックがあることを知ったのでメモメモ。 こんな素晴らしいリソースを提供してくださって感謝です。 m(_ _)m Succinctly series http://www.syncfusion.com/res…

.NET クラスライブラリ探訪-066 (Caller Information, CallerFilePath, CallerLineNumber, CallerMemberName, C# 5.0, 呼び元情報の取得)

C#

今回は、C# 5.0から追加された機能であるCaller Informationについてです。 Caller Information機能は、名前が示すとおり「呼び元の情報」を取得するための機能です。 __FILE__や__LINE__などと同じような機能がC#にも追加されたイメージです。 利用するには…

Windows FormsのコントロールとWPFのコントロールの相互表 (MSDN, Windows フォーム コントロール, WPF コントロール, 同等のコントロール)

C#

WinFormsに慣れている人が、WPFでコントロールを探す際などに利用できる資料です。 私自身よく参照していますので、忘れないようにメモメモ。 Windows フォーム コントロールおよび同等の WPF コントロール http://msdn.microsoft.com/ja-jp/library/ms75055…

Linq入門記-91 (LINQ to XML, 行番号と行位置の取得, IXmlLineInfo, HasLineInfo, LineNumber, LinePosition)

LINQ to XMLでの行番号と行位置情報の取得について. 過去の内容は以下から見れます。よろしければご参照くださいませ。 Linq入門記 https://sites.google.com/site/gsfzero1/#TOC-Linq- 今回は、IXmlLineInfoを利用して行番号と行位置の情報を取得する方法に…