タグ

.netに関するn500kのブックマーク (70)

  • はじめての LINQ - Qiita

    この記事は C# で開発をしているのに、まだ LINQ(リンク)が使えていない人向けの入門記事です。 LINQ が使えていない理由は何でしょうか? 「難しくて理解できない」 「SQL っぽくて読みづらい」 「とっつきにくくて試せていない」 「メリットが分からない」 「必要性を感じない」 そういった人にも LINQ を理解してもらえるように、できるだけ簡単に説明していきます。 LINQ とは? LINQ とは何でしょうか? 公式(MSDN)には、以下のように説明されています。 統合言語クエリ (LINQ: Language-Integrated Query) は、クエリ機能を C# 言語 (および Visual Basic や場合によってその他の .NET 言語) に直接統合する一連の技術の名前です。 LINQ を使用すると、クエリは、クラス、メソッド、イベントなどと同じように、高度な機能を

    はじめての LINQ - Qiita
  • ArrayListとListの違いとは?[C#/VB]

    連載目次 配列のように使えて長さは可変のコレクションが、.NET Frameworkには2つある。ArrayListクラス(System.Collections名前空間)とList<T>クラス(System.Collections.Generic名前空間)だ。両者の違いは何だろうか? そして、どちらを使うべきだろうか? 結論から言っておくと、Listを使うべきなのだ。稿では、両者の使い方や変換方法、そしてパフォーマンスについて解説していく。 特定のトピックをすぐに知りたいという方は以下のリンクを活用してほしい。

    ArrayListとListの違いとは?[C#/VB]
  • Visual Studio Installer Projectで上書きインストールができない - write ahead log

    インストーラを作りたい 昔々, Visual Studio にはInstaller Projectというインストーラを作成するためのプロジェクトを作成する機能がありました. 機能が少なくても標準でついてきていたので非常に便利だったようなのですが2005くらいから消えてしまったそうです. (伝聞なのは私自身使ったことがないためです) しかし未だにVS2017が出てもなお, 私はWindowsフォームアプリケーションをせっせと作るお仕事をしているので, インストーラが標準で作れないのは非常に不便です. と思ったらVS2015からアドオンとして復活しています. Visual Studio: Marketplace - Microsoft Visual Studio 2015 Installer Projects 具体的な使い方は他サイトにたくさんあるので参照してみてください. おすすめです. M

    Visual Studio Installer Projectで上書きインストールができない - write ahead log
  • VBでジェネリックあれこれ〜VB2008 | ロケッこがゆく

    ジェネリックといっても薬ではなく、VS2008のジェネリック これまでも何も書かずに投稿していたので、いまさらなような気もしますが、 C#ではかなり文献はありますが、VBでは少ないようなので、自分が使っている分を覚え書き。 ■TValueとはなんぞや まず、基的なところで、ジェネリックを使っていると、当たり前のようにTとかTValueって文字が出てくるのですが、これはいったいこれはなに?から。 この疑問について、わかりやすく書いているのが、こちらでしょうか。 ジェネリック: Java vs C# つまり、Tは型パラメータと読めばいいらしい。 このTに何かを入れると、Tはその宣言された型になるというわけで、 例えば、自分がよく使うListやDictionaryクラスなんかは、

    VBでジェネリックあれこれ〜VB2008 | ロケッこがゆく
  • MIMEタイプの取得・判定 - smdn.jp

    Windowsの場合、レジストリのHKEY_CLASSES_ROOTに、拡張子毎にアプリケーションの関連付けなどの情報が格納されている。 目的の拡張子をキーとしたノードにContent Typeの値が登録されている場合は、その値を使用できる。 using System; using Microsoft.Win32; class Sample { private static string GetMimeTypeByExtension(string extension) { const string defaultType = "application/octet-stream"; var key = Registry.ClassesRoot.OpenSubKey(extension); if (key == null) return defaultType; var mimeType =

    MIMEタイプの取得・判定 - smdn.jp
    n500k
    n500k 2019/03/25
    windowsで拡張子からMIMEタイプを判定する方法
  • 非同期処理、マルチスレッド(余談:別スレッドからフォームコントロールを操作) - 佐々木屋

    そもそもフォームもクラスですし、クラスにあるオブジェクトを別スレッドから操作は出来ません。フォーム自体がスレッドセーフではないから当然と言えば当然なんですが、非同期処理をやるとカウンタや進捗表示など、どうしてもフォームオブジェクトへアクセスしたくなる場面に出くわします。 ボタン1個、ラベル1個を用意したフォームアプリケーションを用意して下さい。 以下はやったらダメな例です。System.ThreadingをUsingして実行して下さい。 private void button1_Click(object sender, EventArgs e) { Thread testThread = new Thread(new ThreadStart(HeavyProc)); testThread.Start(); } private void HeavyProc() { for (int i =

    非同期処理、マルチスレッド(余談:別スレッドからフォームコントロールを操作) - 佐々木屋
  • VB.NET Taskクラスの処理キャンセル | ぷろぐらむノート

    タスクを実行した際、途中でキャンセルしたいことがあります。その際の方法を記載します。 Taskクラス によるタスクキャンセルは、CancellationTokenSourceクラスを使用します。 タスクキャンセル要求は、CancellationTokenSource.Cancel()メソッドを実行します。 これによりキャンセルフラグが立ち、このフラグを参照することによりキャンセル処理を実行します。 ThrowIfCancellationRequested()によるキャンセル方法 オペレーション側プログラム Dim cts As CancellationTokenSource Private Async Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click cts = New Cancellatio

    VB.NET Taskクラスの処理キャンセル | ぷろぐらむノート
  • 実践WPF業務アプリケーションのアーキテクチャ【概要編】 ~ マイクロソフト公式サンプルデータベースAdventureWorksを題材に

    WPFの個別の技術要素に関する解説は多くありますが、アプリケーション全体のアーキテクチャまで踏み込んだ記事は多くないように思います。記事では、マイクロソフトが、架空の大規模多国籍製造企業を想定し、公開しているサンプルデータベース「AdventureWorks」を題材に、Prism for WPFや、グレープシティのコンポーネント「SPREAD for WPF」を活用して業務アプリケーション開発をする際の実践的なアーキテクチャ例を紹介します。 はじめに WPFにおけるXAMLの記述方法、各コントロールの使用方法、リレーショナルデータベースへの接続方法。そういった個別の技術要素に関する解説記事は多くあります。しかしそれら個別要素を組み合わせ、アプリケーション全体としてどう構築するかといった、全体のアーキテクチャに踏み込んだ具体例は少ないように思います。 その最大の要因は、アプリケーション全体

    実践WPF業務アプリケーションのアーキテクチャ【概要編】 ~ マイクロソフト公式サンプルデータベースAdventureWorksを題材に
  • WPFのサンプルアプリケーションを作ってみました。 - Qiita

    この1年半ほど取り組んできたWPFの仕事がそろそろ終わりそうなので、得たノウハウ(というほどのものではないけど)を残しておこうと小さなサンプルアプリケーションを作ってみました。もし次にまたWPF関連の仕事にありつけたらその時のたたき台として使うためですが、これからWPFを使って開発をしようという人のお手というつもりはありませんけど、とっかかりにでもなればと思い公開します。 一人で開発してたので対象となるコードも少なく、WPFの一般的なお作法から大きく外れてたり、まともなプログラマとしてこれはねーだろうというダサいコーディングや、そもそもバグってるかもしれんので、そういう指摘をいただけると嬉しいです。 アプリケーションは蔵書管理を目的とした小さなものですが、WPFでのアプリケーション開発での、MVVMパターン、データバインディング(INotifyPropertyChangedによる変更通知

    WPFのサンプルアプリケーションを作ってみました。 - Qiita
  • 基礎から学ぶLINQの仕組み - Qiita

    C# Advent Calendar 2016の記事です。社内勉強会の資料をリライトしました。新人研修を終えてそれなりにC#が書ける程度の新人が想定読者です。 このテキストについて LINQを自力で実装するために必要なC#の知識をまとめています。LINQの詳細な動作を知ると様々な応用がききます。ぜひ知っておきましょう。 具体的には次のコードが理解できるようになるのが目標です。 public static IEnumerable<TResult> Select<TSource, TResult>( this IEnumerable<TSource> source, Func<TSource, TResult> selector) { foreach (var item in source) { yield return selector(item); } } 短いコードに様々な要素が詰め込ま

    基礎から学ぶLINQの仕組み - Qiita
  • VB.NETでラムダ式やらデリゲートを扱う際のちょっとした注意点 - Qiita

    はじめに VB.NETにて、LambdaやDelegateを取り扱う際にC#とは別の挙動をすることがあるのでまとめてみました。 尚、書き手はC#を主に扱っているので、VB.NETのサンプルコードに不手際があるかもしれませんので、何か気づかれましたらコメントをいただければ幸いです。 VB.NETにできて、C#にできないこと:ラムダに対する型推論 C#の場合 C#では、ラムダ式に対する推論は許容されません。

    VB.NETでラムダ式やらデリゲートを扱う際のちょっとした注意点 - Qiita
  • 第8回 LINQメソッド形式編(1/4) - @IT

    予約語のエスケープ まず軽いが重要な話題から入っていこう。 クエリ式によくあるワナとして、クエリ式の予約語と使用するキーワードが衝突するという問題がある。 例えば、これといって特にひねったコーディングは行っていない以下のリスト1を見ていただきたい。移動経路クラスのfromとtoはpublicなフィールドだから、FromとToにすべきだよな、といった感想は出るかもしれないが、それは名前付けルールの問題であって、コンパイルを通らないような問題ではない。 しかし、このコードはコンパイルできない。 using System; using System.Linq; class 移動経路 { public string from; public string to; } class Program { static void Main(string[] args) { 移動経路[] 移動経路データ =

  • WPF4.5入門 その23 「DataGridコントロール その1」 - かずきのBlog@hatena

    過去記事 WPF4.5入門 その1 「はじめに」 WPF4.5入門 その2 「WPFとは」 WPF4.5入門 その3 「Hello world」 WPF4.5入門 その4 「Mainメソッドはどこにいった?」 WPF4.5入門 その5 「全てC#でHello world」 WPF4.5入門 その6 「WPFを構成するものを考えてみる」 WPF4.5入門 その7 「XAMLのオブジェクト要素と名前空間」 WPF4.5入門 その8 「オブジェクト要素のプロパティ」 WPF4.5入門 その9 「コレクション構文」 WPF4.5入門 その10 「コンテンツ構文」 WPF4.5入門 その11 「マークアップ拡張」 WPF4.5入門 その12 「その他のXAMLの機能」 WPF4.5入門 その13 「簡単なレイアウトを行うコントロール」 WPF4.5入門 その14 「レイアウトコントロールのCanva

    WPF4.5入門 その23 「DataGridコントロール その1」 - かずきのBlog@hatena
  • LINQチートシート的なもの - Qiita

    UnityのC#のコード(幾つかの公式Assetとか)読んでたらFindとかいっぱい使ってあって悲しくなったんでLINQのメソッド一覧的なの作ってみました。 お願いだからforeach+List.AddじゃなくてSelect使ってとか お願いだから引数配列じゃなくてIEnumerableにしてとか なんでforeach回すだけなのにToArrayやってるの?とか 明らかに適切な場所じゃないとこで使っていて悲しかったんや・・・ とりあえずこんな事できるよ~的なの作ってみました。 とりあえずC#書く人なら常識的なところ辺りまで ※ファイルの頭に当然using System.Linq;入れています ※ソースコード形式です。各メソッド最後の行は出力を示します ※IEnumerableをシーケンス表記で統一しています。(リストと読み替えてもいいと思います) ※LINQは基的に少しだけ低速ですが気に

    LINQチートシート的なもの - Qiita
  • 拡張メソッドを作成するには?[C#/VB]

    拡張メソッドを使うと、型定義を直接修正することなく、その型にインスタンスメソッドを追加(したように扱うことが)できる。その作成方法と応用例を見てみよう。

    拡張メソッドを作成するには?[C#/VB]
  • Home | .NET Fiddle

    Test your C# code online with .NET Fiddle code editor.

  • DataGridViewのDataSourceに指定できるオブジェクトについての考察

    DataGridViewのDataSourceを使用してデータの表示を行おうと しているのですが、いまいち使い方がわからなかったのでメモ書き。 DataGridView.DataSource プロパティ http://msdn.microsoft.com/ja-jp/library/system.windows.forms.datagridview.datasource.aspx DataSourceとして指定できるオブジェクトは ・IList インターフェイス。(1次元配列等) ・IListSource インターフェイス。(DataTable、DataSet) ・IBindingList インターフェイス。(BindingList<T>等) ・IBindingListView インターフェイス。(BindingSource等) using System; using System.Win

    DataGridViewのDataSourceに指定できるオブジェクトについての考察
  • ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた

    2013/10/12 .NET 勉強会 / ヒーロー島 『ヒーロー島 秋の収穫祭 2013』の同名のセッションの資料です サンプルソースやフォローアップなどはこちら: http://d.hatena.ne.jp/kiyokura/20131014/p1

    ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
  • VBラムダ式 基礎文法最速マスター - @IT

    ■0. まえがき 稿では、小さいテーマではあるが、まだまだ慣れ親しんでいない開発者が少なくないと考えられる「ラムダ式(VB:Visual Basic)」についての基礎文法を簡潔にまとめる(C#ラムダ式についてはこちら)。「ラムダ式、どう書くんだっけ?」という場合のリファレンスとして活用していただけるとうれしい。また、ラムダ式を敬遠しているという方は、まず稿が学び始める取っ掛かりになるかもしれない(もちろん稿の説明は充実しておらず、すべてを学べるわけではない)。 今年(2010年)に入ってインターネット上では、プログラミング言語の基文法を簡潔にまとめた「○○言語 基礎文法最速マスター」(以降、最速マスター・シリーズ)というブログ記事が多数投稿されている。参考までに、そのいくつかを示そう(そのほかについては、こちらを参照されたい)。 VBA 基礎文法最速マスター:何かしらの言語による記

  • Entity Framework Tutorial

    If you're completely new to Entity Framework, we recommend you to learn Entity Framework basics first and gradually move forward.