.NET Clips - C#のタグがつけられたエントリー
2
CLIPS

ジェネリックオブジェクトから型引数の型を取得する (System.Type, IsGenericType, GetGenericArguments, Generic, 型引数, 型パラメータ)

2543日前に更新 aoki1210aoki1210 2552日前に登録
2010年08月06日 GMT 2010年07月28日 GMT
ジェネリックなオブジェクトから、オブジェクト作成時に指定された型引数を取得するには System.Typeクラスの以下のメソッドを利用します。 publicvirtual Type[] GetGenericArguments() GetGenericArgumentsメソッドは、System.Typeの配列を返します。 この配列がそのまま型引数の型となっています。 以下、サンプルで... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 25 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, ジェネリック
3
CLIPS

Reactive Extensions入門 + メソッド早見解説表

2544日前に更新 aoki1210aoki1210 2552日前に登録
2010年08月05日 GMT 2010年07月28日 GMT
Silverlight Toolkitに密かに隠された宝石”System.Reactive.dll”が発見されてから1年。Reactive FrameworkからReactive Extensionsに名前が変わりDevLabsでプロジェクトサイトが公開され、何度となく派手にAPIが消滅したり追加されたりしながら、 JavaScript版まで登場して、ここまで来ました。IObservable (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 27 | コメント | | ソースサイト: neue.cc
タグ: C#, Rx
1
CLIPS

Microsoft.Web.Administration API

2550日前に更新 aoki1210aoki1210 2553日前に登録
2010年07月30日 GMT 2010年07月27日 GMT
C:WindowsSystem32inetsrvMicrosoft.Web.Administration.dll をプロジェクトの参照設定に加えると、 Microsoft.Web.Administration API が利用可能になります 例えば、以下のようなコードを書くと、 using ( ServerManager serverManager = ServerManager.OpenRemote(serverName)) { Site site = serverManager.Sites[ "Default Web Site" ]; site.Applications.Add(path, physicalPath); serverManager.CommitChanges(); } IIS の "Default Web Site" に、アプリケーションを追加できます。 (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 25 | コメント | | ソースサイト: gushwell.ldblog.jp
タグ: C#, IIS
3
CLIPS

C#のforeach文で、自分が何回目の繰り返しか知る方法 【▲→川俣晶の縁側→ソフトウェア→技術雑記】

2544日前に更新 aoki1210aoki1210 2553日前に登録
2010年08月05日 GMT 2010年07月27日 GMT
以下はただのメモです。  foreach文でループをまわす場合、自分が何回目の周回であるかを知る方法は無いと思っていました。そのための変数を明示的にカウントアップしなければ分からないと思っていました。しかし、実はSelectメソッドと併用すると回数が分かります。  つまり、コレクションの順番に対応する0~の数字の生成はSelectメソッドに任せられるわけです。 サンプルソース1 §  通常、このfor文はforeachに置き換えられません。変数iの値が得られなくなるからです。 using System; using System.Linq; class Program {     static void Main(string[] args)     {         string[] a = { "A", "B", "C", "D", "E", "F" };         for (int i=0; i (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 35 | コメント | | ソースサイト: mag.autumn.org
タグ: C#
1
CLIPS

Re: 不完全にしてかなり言葉足らずな比較プログラミング言語学

2551日前に更新 aoki1210aoki1210 2554日前に登録
2010年07月29日 GMT 2010年07月26日 GMT
不完全にしてかなり言葉足らずな比較プログラミング言語学 - 西尾泰和のはてなダイアリー C#はこんな感じか? (追記)id:nagakura_eil:20100726:p1 ありがとう。 元記事はネタが増えてるな。 if(x = 0) Javaと一緒。x = 0はint、条件式はboolだから型エラーだよ派。 値渡し、参照渡し C#では参照型と値型があるが、どっちも値渡しがデフォルト(参照型は参照の値渡し、値型は値渡し)。 でも変数の参照を渡すこともできる(ref/outパラメータ)。 ついでに言えばポインター型もある(unsafeコンテキストで使える)。 値の範囲の定義 Javaと一緒。もちろん決まってます。配列 Javaと一緒。ファーストクラスのオブジェクト。範囲外へのアクセスは例外を投げる。関数へのポインタ リフレクションとはまた別に、メソッドもしくは匿名メソッドへのデリゲートという形で存在する。 変数に代入したり、メソッドの引数や戻り値に使うことも可能。 関数呼び出しの括弧 たとえ引数がなく... (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 1 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#
1
CLIPS

Windows Phone 7 + Reactive ExtensionsによるXml取得

2553日前に更新 aoki1210aoki1210 2556日前に登録
2010年07月27日 GMT 2010年07月25日 GMT
Windows Phone 7にはReactive Extensionsが標準搭載されていたりするのだよ! なんだってー!と、いうわけで、Real World Rx。じゃないですけれど、Rxを使って非同期処理をゴニョゴニョとしてみましょう。 ネットワークからデータ取って何とかする、というと一昔前はRSSリーダーがサンプルの主役でしたが、最近だとTwitterリーダーなのでしょうね。というわけで、Twitterリーダーにします。といっても、ぶっちゃけただたんにデータ取ってリストボックスにバインドするだけです。そしてGUI部分はSilverlightを使用してWindows Phone 7でTwitterアプリケーションを構築 - @ITのものを丸ごと使います。手抜き!というわけで、差分としてはRxを使うか否かといったところしかありません。 なお、別に全然Windows Phone 7ならでは!なことはやらないので、WPFでもSilverlightでも同じように書けます。ちょっとしたRxのサンプルとしてどうぞ。今回は出たばかりの... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 20 | コメント | | ソースサイト: neue.cc
タグ: C#, Rx, Windows Phone
1
CLIPS

CSjavaCCを使わなくてはならなくなった

2554日前に更新 aoki1210aoki1210 2558日前に登録
2010年07月26日 GMT 2010年07月22日 GMT
元々の始まり 研究室でのデフォルトで使う言語をC#にするらしい。 僕はJavaCCを使っていたけどXMLで出力する予定だったから別にいいかな~と流していたけど、先生曰く出来れば全部C#コードにしてほしいなとのことw とは言っても、既にjavaCCで書いてしまったコードがあるわけでこいつをどげんかせんといかんということに僕の中でなった。(もういっそのことLALR系で適当なのを見つけて作ったほうが良いんじゃないかと思ってるけど) で調べてみたら CSjavaCCというのが引っかかった。JavaCCのコードからC#コードを生成してくれるスグレモノらしい。(但しjjtreeは除く・・・また自前でノード書くのか・・・) これを使えば、なんとかなりそうな気もするので取り敢えず試してみることにしました... (詳細)
カテゴリー: ツール(VisualStudio/Expression) | クリック数: 10 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, CSjavaCC
3
CLIPS

Delegateの細かいこと

2558日前に更新 aoki1210aoki1210 2563日前に登録
2010年07月22日 GMT 2010年07月18日 GMT
C#プログラミングにおいて、もはやdelegateの知識は不可欠のものであるが、同時に文法的に「あれ?こんなはずでは…」と思わせる所がdelegateまわりに多いのも確かである。手続き型言語に後から関数言語の概念を取り入れたのだからやむをえない。 しかしIDEの助けもあって、まるで野生動物が危険地帯を本能的に避けるかのごとく、多くのプログラマはいつしか「何となくだけど、そう書けばコンパイラが文句を言わないから」と人間=学習機械の本領を発揮してうまくdelegateと共存するようになっていくようである。もちろん、言語仕様をすべて頭に入れてからでないとプログラムなんて書けるか、という人間コンパイラかDijkstraかというような人も稀にはおいでだろうが。 ここでは、ふだん知らなくてもなんとかなっている所について、言語仕様から見直してみたいと思う。 まずは短いクイズから。 匿名メソッドとラムダ式の違い 匿名メソッドとラムダ式というのは記法的な違いであってIL(中間言語)レベルでは区別されないという理解で問題はない。合わせて「匿名関数(Annony... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 20 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, Delegate
2
CLIPS

C# 4入門:第1回 dynamic型 - @IT

2560日前に更新 aoki1210aoki1210 2564日前に登録
2010年07月20日 GMT 2010年07月16日 GMT
C# 4がやってきた  6月19日に行われた「第3回 .NET中心会議」にパネラーとして出席させていただいた。  その際、実は大きな思い違いをしていたことに気付いた。多くの開発者はMSDNの契約を行っていて、サブスクライバー・ダウンロードからすでにVisual Studio 2010を入手済みであることは前提。しかし、まだ開発プロジェクトで本格的な利用はされておらず、現行のVisual Studio 2008から本当に移行してよいか悩んでいる……と思っていた。  しかし、実態はそうではなかった。実は、2008をスキップして2005から2010に進むことを検討しているユーザーが多いどころか、Visual Basic 6.0からの移行という計画を持っているユーザーすらまだいる。しかも、いまだにJavaというユーザー層までいて、恐らく彼らはVisual Studioですらない。Ecliseという名前は、私から見ればすでに聞かなくなって久しい「過去の流行ワード」だと思っていたが、彼らにはまだ生々しい現実であり、物事を判断す... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 12 | コメント | | ソースサイト: www.atmarkit.co.jp
タグ: C#, Visual Studio 2010
1
CLIPS

C++→C(DLL)→C#(クラスライブラリ)

2565日前に更新 aoki1210aoki1210 2566日前に登録
2010年07月15日 GMT 2010年07月14日 GMT
C++のアプリから伝統的なC言語DLL(__declspec(dllexport))を呼び出したら実はそいつがC++/CLIで作られていて、そこからC#で作ったクラスライブラリを呼ぶぜ!みたいなパターン。 わかりやすく言えば、SusieプラグインをC#で作りたい、とかそんな話だよ!わかりやすくないか!! 興味のない人のためにここから先は「続きを読む」で。長文注意。 とりあえずVC++にソリューションを一個作って、そのなかにDLLとEXEのプロジェクトを作っていく。ちなみにここではVC++(とVC#)2008のExpressEditionを使用しています。 (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 89 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, C++
1
CLIPS

WCFによる多重起動アプリケーションの管理 その1

2564日前に更新 aoki1210aoki1210 2567日前に登録
2010年07月16日 GMT 2010年07月13日 GMT
ひとつのアプリケーションが複数個同時に起動される可能性がある場合、同時にアクセス出来るリソースが限られているなどの理由で、それぞれのプロセスが連携できる仕組みが必要になることがある。今回はC#のwcfを使ってプロセス同士の連携をやってみたいと思う。概要 まずはシステムが備えるべき特徴を列挙しておく。システム全体はひとつのホストとひとつ以上のクライアント(Form)で構成される。Exeファイルが実行される度に、新しいクライアント(Form)が生成される。ホストはExeファイル実行時に存在しない場合にだけ生成される。起動したすべてのクライアント(Form)が閉じられるとホストも終了する。クライアントはホストのメソッドを呼び出せる。ホストはクライアントのコールバックメソッドを呼び出せる。 趣味のレベルでの利用なら、大体こんな感じで十分じゃないだろか。 さて、特徴の中には"Exeファイルが実行する度に"というものが入っている。これを実現するには何かしらの手段を用いて起動されたプロセス間で情報をやり取りする必要がある。.net framework... (詳細)
カテゴリー: サービス(Azure/WCF/Bing/Live) | クリック数: 58 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, WCF
1
CLIPS

短縮URLサイト「別名は.jp」

2567日前に更新 aoki1210aoki1210 2568日前に登録
2010年07月13日 GMT 2010年07月12日 GMT
ネタサービスを作ってました。 http://別名は.jp/ URLを登録すると、日本語の短縮URLを作ります。 例: http://別名は.jp/老酒の羊歯 ←はてなトップに飛びます 末尾にハイフン(-)をつけると、情報ページが表示されます。 例: http://別名は.jp/老酒の羊歯- 404ページはうちの猫にしました。 例: http://別名は.jp/見つからない 勉強のつもりで、ASP.NET MVC2 + Entity Framework 4で実装しました。そのあたりのことをTech EdのLTで話せるといいな。 しかし、そもそもはtwitterで使おうと思って作ったのだけど、Webだと日本語URLはリンクにならなかった。やっぱりURLエンコードしないとだめか……ネタ的に失敗。 短縮URLのテスト: 「ドイツ人が本気でブブゼラに取り組みだすと凄い事になる」 http://別名は.jp/苦い市進less than a minute agovia webINOMATA K... (詳細)
カテゴリー: その他(MS/表彰etc..) | クリック数: 6 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: ASP.NET MVC, C#
1
CLIPS

EventLog.WriteEvent メソッドを使ってイベントログを出力する

2566日前に更新 aoki1210aoki1210 2569日前に登録
2010年07月14日 GMT 2010年07月11日 GMT
C#でイベントログを出力するには通常 EventLog.WriteEntry メソッドを使うのが一般的だと思うのですが、本エントリはそうではなく EventLog.WriteEvent メソッドを使ってイベントログを出力する方法を紹介します。 仕事でとあるイベントログの監視ツールに対してイベントログを出力する必要があって、「簡単だろう」と高を括っていたら意外とはまってしまったのが今回の内容です。 作業環境はこんな感じです。Windows 7 Ultimate Microsoft Visual C# 2010 Express Microsoft Visual C++ 2010 Express MicrosoftWindowsSDK v7.1 メッセージリソースDLLを作る 最初にイベントログに出力するメッセージを格納するメッセージリソースDLLを作成します。 メッセージリソースDLLは以下の手順で作成することができます。メッセージを記述したメッセージスクリプトを作成し、メッセー... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 119 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#, イベントログ
1
CLIPS

C#4.0の追加機能-06(共変性と反変性, Covariance and Contravariance, Generic Interface, ジェネリックインターフェース)

2567日前に更新 aoki1210aoki1210 2571日前に登録
2010年07月13日 GMT 2010年07月09日 GMT
以下、自分用のメモです。 C# 4.0では、ジェネリックインターフェースに対して、「共変性(Covariance)」と「反変性(Contravariance)」 が適用されるようになりました。 言葉がややこしいので、実際にソースを見た方が分かりやすいです。 共変性とは、簡単に言うと、子のクラスの型を親クラスの型に変換出来ること。string str = "gsf_zero1"; object obj = str; これは、利用している人が多いと思います。 C# 4.0より、ジェネリックインターフェースに対して、共変性を利用出来るようになりました。 IEnumerable (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 12 | コメント | | ソースサイト: d.hatena.ne.jp
タグ: C#
1
CLIPS

C#と諸々 [メモ] 式ツリーでループ

2567日前に更新 aoki1210aoki1210 2571日前に登録
2010年07月13日 GMT 2010年07月09日 GMT
今更ながら式ツリーに入門。 事実上、.NET 4.0 からは構文ツリーに進化したらしい。 例えば、こんな感じのプログラムを式ツリーで構築したいとする。 for (int i = 1; i <= 10)=""    ="" {=""        ="" console.writeline(i);=""    ="" }=""    ="" else=""    ="" {=""        ="" break;=""    ="" }=""    ="" i++;="" }="" これを式ツリーで組むとこんな感じになる。="" var="" breaklabel="Expression.Label();" var="" iparameter="Expression.Variable(typeof(int)," "i");="" var="" writelinemethod="typeof(Console).GetMethod("WriteLine"," new[... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 11 | コメント | | ソースサイト: csharper.blog57.fc2.com
タグ: C#
1
CLIPS

他のQueryProviderに寄生するQueryProviderの作り方

2567日前に更新 aoki1210aoki1210 2571日前に登録
2010年07月13日 GMT 2010年07月09日 GMT
他のQueryProviderに寄生するQueryProviderの作り方Expression の解釈に介入したい場合とかに利用するパターンなんですが、別のQueryProviderに寄生するQueryProvider を書く事がよくありますんで、コード例おば。public partial class InterceptorQueryProvider : IQueryProvider{     IQueryProvider originalProvider;     public InterceptorQueryProvider( IQueryProvider originalProvider ) { this.originalProvider = originalProvider; }     public IQueryable CreateQuery( Expression exp )     {        return new WeapperQueryableNoType( this,originalProvider.CreateQuery( exp ) );    }   ... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 5 | コメント | | ソースサイト: aka-kazuk.spaces.live.com
タグ: C#
1
CLIPS

neue cc - IEnumerableのCastを抹殺するためのT4 Templateの使い方

2571日前に更新 aoki1210aoki1210 2573日前に登録
2010年07月10日 GMT 2010年07月07日 GMT
.NET Framework 1.0の負の遺産、HogeCollection。それらの大半はIEnumerable (詳細)
カテゴリー: アーキテクチャ/デザイン/OSS | クリック数: 12 | コメント | | ソースサイト: neue.cc
タグ: C#, T4 Template
1
CLIPS

Project Templateを作ろう! ~ Visual Studio 2010 の "Project Template" プロジェクト テンプレート

2567日前に更新 aoki1210aoki1210 2574日前に登録
2010年07月13日 GMT 2010年07月06日 GMT
Visual Studio では、プロジェクト テンプレートを使ってプロジェクトを作成します。この際、「WPF の MainPage.xaml にあらかじめ特定のデザインを仕込んでおきたい」とか、「あらかじめ、基本のソフト構成を揃えておいて、開発会社に作業を依頼したい」といった場合がありませんか? そんなときに、ここで紹介するテンプレートが使えます。 カスタム テンプレートの作成には Visual Studio 2010 SDK のインストールが必要です。C# であれば、プロジェクト作成時に、[C# Project Template] を選択して作成します。プロジェクトを作成すると... (詳細)
カテゴリー: ツール(VisualStudio/Expression) | クリック数: 27 | コメント | | ソースサイト: msdn.microsoft.com
タグ: C#, Visual Studio 2010
1
CLIPS

LINQで外部結合を実装する

2572日前に更新 aoki1210aoki1210 2574日前に登録
2010年07月09日 GMT 2010年07月06日 GMT
SQL で外部結合をする場合は、さくっと left join や *= などを使えば良いのですが、LINQ だといまいち不明。 だったので、探してみました。 Visual Studio 2010 - Visual C# 方法 : 左外部結合を実行する (C# プログラミング ガイド) http://msdn.microsoft.com/ja-jp/library/bb397895.aspx という感じで、モロ、そのままの記事がありました。以前は、LINQ関係は調べるのが大変だったのですが、これは良さそうですね。 備忘録も込みで、解説を加えておくと、 Person、Pet というテーブルがあります。 Person(人)は、Pet(ペット)を飼っている、というイメージですね。 Personには、ペットを飼っていない人もいます。         public class Person         {             public string F... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 44 | コメント | | ソースサイト: www.moonmile.net
タグ: C#, Linq
1
CLIPS

あるオブジェクトが派生型かどうかを知りたい

2572日前に更新 aoki1210aoki1210 2574日前に登録
2010年07月09日 GMT 2010年07月06日 GMT
class BaseClass { } というクラスがあった時に、 あるオブジェクトの型が、BaseClassの派生型かどうかを調べるコードをC#で書きたい場合がたまにあります。 if (obj is BaseClass) MessageBox.Show("obj is BaseClass"); だと、obj が BaseClassのインスタンスでも、この if 文が成り立ってしまうので宜しくないです。 if (obj is BaseClass && obj.GetType().FullName != typeof(BaseClass).FullName) MessageBox.Show("obj is BaseClass"); だと、ちょっとダサい。 そんなときは、そのもの.... (詳細)
カテゴリー: プログラム(C#/VB/C++/F#/PS/Iron..) | クリック数: 5 | コメント | | ソースサイト: gushwell.ldblog.jp
タグ: C#