プログラマーな日々

プログラマーをやっています。好きなものは、C#, TaskChute Cloud, WorkFlowy, Backlog, AWSです。

.NET

C#でWordファイルをPDFに変換する

検証環境 Visual Studio 2008 SP1、.NET Framework 3.5、Word 2007、Office 2007 SP2 プロジェクトの作成 プロジェクトテンプレートはコンソールアプリケーションを選択します。 参照の追加 [COM] - [Microsoft Word 12.0 Object Library]への参照を追加しま…

バージョン別InstallUtil.exeのパス

すぐ忘れるので。 1.1 C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\InstallUtil.exe 2.0 - 3.5 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe 4 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe

IEnumerable.Whereメソッド

Enumerable.Where(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)述語に基づいて値のシーケンスをフィルター処理します。 SQLでは、WHEREに相当します。 ソースコード using System; using System.Collections.Generic; u…

ディレクトリ名の変更を拡張メソッドで実装する

前回(以下のエントリー)のディレクトリ版を作ってみました。 ファイル名の変更を拡張メソッドで実装する - プログラマーな日々ファイル名の変更が必要なケースは珍しくありませんが、System.IO.FileにもSystem.IO.FileInfoにも名前を変更するメソッドはあ…

ファイル名の変更を拡張メソッドで実装する

ファイル名の変更が必要なケースは珍しくありませんが、System.IO.FileにもSystem.IO.FileInfoにも名前を変更するメソッドはありません。 そこで、ファイル名の変更を拡張メソッドでFileInfoに実装してみました。内部ではFileInfo.MoveToメソッドを使用して…

C#のソースコードをJavaに変換できるサイト「CodePorting C#2Java」

※サイトは閉鎖されてしまったようです(2013/10/17追記)C#のソースコードをJavaに変換できるサイト「CodePorting C#2Java」を紹介します。 Free Source Code Converter - Convert .NET Applications to Java クリックするとサインインページが表示されます…

IEnumerable.Unionメソッド

Enumerable.Union(TSource) メソッド (IEnumerable(TSource), IEnumerable(TSource)) (System.Linq)既定の等値比較子を使用して、2 つのシーケンスの和集合を生成します。 SQLでは、UNIONに相当します。 ソースコード using System; using System.Collection…

IEnumerable.ToLookupメソッド

Enumerable.ToLookup(TSource, TKey) メソッド (IEnumerable(TSource), Func(TSource, TKey)) (System.Linq)指定されたキー セレクター関数に従って、IEnumerable から Lookup を作成します。 ソースコード using System; using System.Collections.Generic;…

IEnumerable.ToListメソッド

Enumerable.ToList(TSource) メソッド (System.Linq)IEnumerable から List を作成します。 ソースコード using System; using System.Collections.Generic; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { …

エラーメッセージを英訳してくれるサイト「FindErr.NET」

エラー原因を調査するとき、日本語のエラーメッセージで検索してもわずかな件数しかヒットしないことがあります。 英語のエラーメッセージで検索したいけどわからない...そんなときはエラーメッセージを英訳してくれるサイト「FindErr.NET」を使ってみましょ…

IEnumerable.ToDictionaryメソッド

Enumerable.ToDictionary(TSource, TKey) メソッド (IEnumerable(TSource), Func(TSource, TKey)) (System.Linq)指定されたキー セレクター関数に従って、IEnumerable から Dictionary を作成します。 ソースコード using System; using System.Collections.…

IEnumerable.Joinメソッド

Enumerable.Join(TOuter, TInner, TKey, TResult) メソッド (IEnumerable(TOuter), IEnumerable(TInner), Func(TOuter, TKey), Func(TInner, TKey), Func(TOuter, TInner, TResult)) (System.Linq)一致するキーに基づいて 2 つのシーケンスの要素を相互に関…

SQLのMergeの代わりにDataTableのMergeを使用する

新しいレコードとキーの一致するレコードが、現在のデータに存在する場合はUPDATE、存在しない場合はINSERTしたいケースでは、SQLのMergeが使用できます。しかし、SQL Server 2005以前のバージョンではMergeが実装されていません。 このエントリーでは、SQL…

WCFサービスのプロキシクラスをPartialクラスで拡張する

Visual Studioの「サービス参照の追加」機能を使うと、WCFサービスのプロキシクラスを自動で生成してくれます。このプロキシクラスはPartialクラスなので、拡張することができます。 検証環境 Visual Studio 2008 SP1、.NET Framework 3.5 SP1 WCFサービスプ…

IEnumerable.ToArrayメソッド

Enumerable.ToArray(TSource) メソッド (System.Linq)IEnumerable から配列を作成します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { Man[] mans = new Man[] { new Man() …

IEnumerable.ThenByDescendingメソッド

Enumerable.ThenByDescending(TSource, TKey) メソッド (IOrderedEnumerable(TSource), Func(TSource, TKey)) (System.Linq)キーに従って、シーケンス内の後続の要素を降順で配置します。 SQLでは、ORDER BYの2つ目以降の列の降順指定に相当します。 ソース…

IEnumerable.ThenByメソッド

Enumerable.ThenBy(TSource, TKey) メソッド (IOrderedEnumerable(TSource), Func(TSource, TKey)) (System.Linq)キーに従って、シーケンス内の後続の要素を昇順で配置します。 SQLでは、ORDER BYの2つ目以降の列の昇順指定に相当します。 ソースコード usi…

IEnumerable.TakeWhileメソッド

Enumerable.TakeWhile(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件が満たされる限り、シーケンスから要素を返します。 ソースコード using System; using System.Linq; namespace LinqSample { class Pr…

IEnumerable.Takeメソッド

Enumerable.Take(TSource) メソッド (System.Linq)シーケンスの先頭から、指定された数の連続する要素を返します。 ... SQLでは、TOP nに相当します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void M…

IEnumerable.Sumメソッド

Enumerable.Sum メソッド (IEnumerable(Int32)) (System.Linq)Int32 値のシーケンスの合計を計算します。 SQLでは、SUMに相当します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] ar…

IEnumerable.SkipWhileメソッド

Enumerable.SkipWhile(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件が満たされる限り、シーケンスの要素をバイパスした後、残りの要素を返します。 ソースコード using System; using System.Linq; names…

IEnumerable.Skipメソッド

Enumerable.Skip(TSource) メソッド (System.Linq)シーケンス内の指定された数の要素をバイパスし、残りの要素を返します。 SQLでは、NOT INに相当します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static v…

Sandcastle Help File Builder v1.9.4.0 with Visual Studio Packageがリリースされました

Sandcastle Help File Builder v1.9.4.0 with Visual Studio Packageがリリースされました。 Sandcastle Help File Builder - Download: SHFB v1.9.4.0 with Visual Studio Package General InformationIMPORTANT: On some systems, the content of the ZIP …

IEnumerable.SingleOrDefaultメソッド

Enumerable.SingleOrDefault(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件を満たす、シーケンスの唯一の要素を返します。そのような要素が存在しない場合、既定値を返します。複数の要素が条件を満たす場…

IEnumerable.Singleメソッド

Enumerable.Single(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件を満たす、シーケンスの唯一の要素を返します。そのような要素が複数存在する場合は、例外をスローします。 ソースコード using System; u…

IEnumerable.SequenceEqualメソッド

Enumerable.SequenceEqual(TSource) メソッド (IEnumerable(TSource), IEnumerable(TSource)) (System.Linq)要素の型に対して既定の等値比較子を使用して要素を比較することで、2 つのシーケンスが等しいかどうかを判断します。 ソースコード using System; …

IEnumerable.Selectメソッド

Enumerable.Select(TSource, TResult) メソッド (IEnumerable(TSource), Func(TSource, TResult)) (System.Linq)シーケンスの各要素を新しいフォームに射影します。 SQLでは、SELECTに相当します。 ソースコード using System; using System.Linq; using Sys…

IEnumerable.Reverseメソッド

Enumerable.Reverse(TSource) メソッド (System.Linq)シーケンスの要素の順序を反転させます。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { int[] numbers = new int[] { 1, …

IEnumerable.Repeatメソッド

Enumerable.Repeat(TResult) メソッド (System.Linq)繰り返される 1 つの値を含むシーケンスを生成します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { // 1を10回 Console.…

IEnumerable.Rangeメソッド

Enumerable.Range メソッド (System.Linq)指定した範囲内の整数のシーケンスを生成します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { // 1から10の合計 Console.WriteLine…

IEnumerable.OrderByDescendingメソッド

Enumerable.OrderByDescending(TSource, TKey) メソッド (IEnumerable(TSource), Func(TSource, TKey)) (System.Linq)シーケンスの要素をキーに従って降順に並べ替えます。 SQLでは、ORDER BY DESCに相当します。 ソースコード using System; using System.L…

IEnumerable.OrderByメソッド

Enumerable.OrderBy(TSource, TKey) メソッド (IEnumerable(TSource), Func(TSource, TKey)) (System.Linq)シーケンスの要素をキーに従って昇順に並べ替えます。 SQLでは、ORDER BYに相当します。 ソースコード using System; using System.Linq; namespace …

IEnumerable.OfTypeメソッド

Enumerable.OfType(TResult) メソッド (System.Linq)指定された型に基づいて IEnumerable の要素をフィルター処理します。 ソースコード using System; using System.Collections; using System.Linq; namespace LinqSample { class Program { static void M…

IEnumerable.Minメソッド

Enumerable.Min メソッド (IEnumerable(Int32)) (System.Linq)Int32 値のシーケンスの最小値を返します。 SQLでは、MINに相当します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] ar…

IEnumerable.Maxメソッド

Enumerable.Max メソッド (IEnumerable(Int32)) (System.Linq)Int32 値のシーケンスの最大値を返します。 SQLでは、MAXに相当します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] ar…

WCFのセッション機能でステートフルなWebサービスを作成する

Webサービスは通常ステートレスですが、WCFのセッション機能を使うとステートフルなWebサービスを作成することができます。 検証環境 Visual Studio 2008 SP1、.NET Framework 3.5 SP1 WCFサービスプロジェクト プロジェクトテンプレートは、[Web] - [WCFサ…

IEnumerable.LongCountメソッド

Enumerable.LongCount(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)シーケンス内で条件を満たす要素の数を表す Int64 を返します。 SQLでは、COUNTに相当します。 ソースコード using System; using System.Linq; names…

IEnumerable.LastOrDefaultメソッド

Enumerable.LastOrDefault(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)条件を満たす、シーケンスの最後の要素を返します。このような要素が見つからない場合は既定値を返します。 SQLでは、SELECT TOP 1 ORDER BY DESC…

IEnumerable.Lastメソッド

Enumerable.Last(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件を満たす、シーケンスの最後の要素を返します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { s…

IEnumerable.Intersectメソッド

Enumerable.Intersect(TSource) メソッド (IEnumerable(TSource), IEnumerable(TSource)) (System.Linq)既定の等値比較子を使用して値を比較することにより、2 つのシーケンスの積集合を生成します。 2つのシーケンスの両方に存在する要素を返します。 SQL…

ソースコードを自動生成できるAutoCodeをインストールしてみた

AutoCodeはVisual Studioのアドインです。AutoCodeはコマンドという機能でソースコードを自動生成します。コードスニペットの進化版というイメージです。 .net AutoCode v4.0 拡張機能Powerful extension for VS.NET to generate code, execute macros, eval…

IEnumerable.GroupByメソッド

Enumerable.GroupBy(TSource, TKey) メソッド (IEnumerable(TSource), Func(TSource, TKey)) (System.Linq)指定されたキー セレクター関数に従ってシーケンスの要素をグループ化します。 SQLでは、GROUP BYに相当します。 ソースコード using System; using …

IEnumerable.FirstOrDefaultメソッド

Enumerable.FirstOrDefault(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)条件を満たす、シーケンスの最初の要素を返します。このような要素が見つからない場合は既定値を返します。 SQLでは、SELECT TOP 1〜ORDER BY〜…

IEnumerable.Firstメソッド

Enumerable.First(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean)) (System.Linq)指定された条件を満たす、シーケンスの最初の要素を返します。 ソースコード using System; using System.Linq; namespace LinqSample { class Program { …

IEnumerable.Exceptメソッド

Enumerable.Except(TSource) メソッド (IEnumerable(TSource), IEnumerable(TSource)) (System.Linq)既定の等値比較子を使用して値を比較することにより、2 つのシーケンスの差集合を生成します。 SQLでは、WHERE〜NOT IN〜に相当します。 ソースコード usin…

Enumerable.Emptyメソッド

Enumerable.Empty(TResult) メソッド (System.Linq)指定した型引数を持つ空の IEnumerable を返します。 ソースコード using System; using System.Collections.Generic; using System.Linq; namespace LinqSample { class Program { static void Main(strin…

IEnumerable.ElementAtOrDefaultメソッド

Enumerable.ElementAtOrDefault(TSource) メソッド (System.Linq)シーケンス内の指定されたインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。 ソースコード using System; using System.Linq; namespace LinqSample { …

IEnumerable.ElementAtメソッド

Enumerable.ElementAt(TSource) メソッド (System.Linq)シーケンス内の指定されたインデックス位置にある要素を返します。 ... ソースコード using System; using System.Linq; namespace LinqSample { class Program { static void Main(string[] args) { i…

IEnumerable.Distinctメソッド

Enumerable.Distinct(TSource) メソッド (IEnumerable(TSource)) (System.Linq)既定の等値比較子を使用して値を比較することにより、シーケンスから一意の要素を返します。 ... SQLでは、SELECT DISTINCTに相当します。 ソースコード using System; using Sy…

IEnumerable.DefaultIfEmptyメソッド

Enumerable.DefaultIfEmpty(TSource) メソッド (IEnumerable(TSource), TSource) (System.Linq)指定されたシーケンスの要素を返します。シーケンスが空の場合はシングルトン コレクションにある型パラメーターの既定値を返します。 ソースコード using Syste…