タグ

C#に関するyokkongのブックマーク (15)

  • ページ遷移パラメータをJSON文字列に変換して持ち運ぶ - Windowsストアアプリ開発

    それなら、自作クラスをシリアライズ可能にして、SuspensionManager.SessionStateに突っ込めばいいのでは?

  • ジェネリック・クラスで変わるC#とVBのコレクション ― @IT

    連載目次 Visual Studio 2005の登場に合わせてバージョンアップしたC# 2.0(以下、C#)やVisual Basic 2005(以下、VB)には、たくさんの新機能が導入されています。その中でもプログラマにとって今後欠かせない機能となるのは、やはり「ジェネリック」(Generics)です。 しかしC#やVBのビギナーにとって、ジェネリックは少々分かりづらい機能でもあります。稿では2回にわたり、ジェネリックにより何ができるのか、どのように使うのかといったジェネリックの基事項を分かりやすくまとめてみます。 ジェネリックとは? ジェネリックとは、簡単にいうと、特定の型(クラス)に依存しないクラスやメソッドを記述するための仕組みです。この仕組みは、クラス、構造体、インターフェイス、メソッド、デリゲートに適用でき、ジェネリックの仕組みを使ったクラスやメソッドは、「ジェネリック・ク

    ジェネリック・クラスで変わるC#とVBのコレクション ― @IT
    yokkong
    yokkong 2016/12/22
  • ジェネリック

    概要 C# 2.0 で、 C++でいうところのテンプレート、一般にはジェネリック(ジェネリクス)などと呼ばれるものが実装されました。 (C++ のテンプレートとは少し仕様が異なりますが。) ジェネリック※(generics:総称性)、 あるいは、総称的プログラミング(generic programming)とも呼ばれますが、 この機能は、 さまざまな型に対応するために、型をパラメータとして与えて、その型に対応したクラスや関数を生成するもの機能です。 ポイント ジェネリック: 型だけ違って処理の内容が同じようなものを作るときに使う。 ジェネリッククラス:IComparable<T> { int CompareTo(T x, T y); } ジェネリックメソッド:T max<T>(T x, T y) { ... } ※genericsの訳語 英語だと、名詞では generics、形容詞が ge

    ジェネリック
    yokkong
    yokkong 2016/12/22
  • オブジェクトをJsonへシリアライズ・デシリアライズ | Citizen of undefined

    この記事は前身のブログのアーカイブを引き継いだものです. 画像が正しく表示できないなど,コンテンツの表示に問題がある恐れがあります. 今私が作っているソフトで、HTMLとC#プログラムでデータのやりとりをしないといけなくなったのですが、その時にC#オブジェクトをJavascriptへ簡単に伝えるとなるとJsonという選択肢が一番現実的かと思います。 C#コードでJSONへデシリアライズすることになったのでコードの紹介。 一応、今後たくさん使う機会があるかと思って拡張メソッドにしてみました。ソースコードをファイルごとそのままおいておきます。 参照設定 まず参照設定に「System.Runtime.Serialization」を追加してください。.NET Frame work 3.5からのサポートみたいです。 ソースコード using System.IO; using System.Runti

    yokkong
    yokkong 2016/12/22
  • [UWP] 入門006:別のページに遷移する | 眠るシーラカンスと水底のプログラマー

    記事はUWP(Universal Windows Platform)の入門記事第6回です。 今回は新しいページ(画面)の追加と、追加したページに遷移する方法を紹介します。 概要 記事では以下のことが学習できます。 ・新期ページの追加 ・別のページへの移動 環境条件 記事は以下の環境を前提としてます。 ・Windows 10 OS(Pro以上) ・Visual Studio 2015(+UWP SDK) 新期ページの追加 Step1:プロジェクトの作成 まず新規プロジェクトを作成します。プロジェクト名はお好みで構いませんが、ここではPageSampleという名前でプロジェクトを作成したものとして進めます。 (プロジェクトの作成については入門003:Hello World(1)を参照してください。) Step2:「新しい項目の追加」ウィンドウの起動 新しくページを追加するにはソリューショ

    [UWP] 入門006:別のページに遷移する | 眠るシーラカンスと水底のプログラマー
  • WPF4.5入門 その47 「コンテンツモデル」 - かずきのBlog@hatena

    WPFの重要なコントロールの1つにContentControlクラスがあります。このクラスは、Contentプロパティに設定された単一の要素を表示するという機能を提供するコントロールです。「WPFのコンセプト」でも紹介しましたが、このコントロールが、要素を表示する際の詳細なロジックを以下に示します。 ContentTemplateにDataTemplateが設定されている場合、ContentプロパティにContentTemplateを適用した結果を表示します。 ContentTemplateSelectorにDataTemplateSelectorが設定されている場合、ContentプロパティにContentTemplateSelectorが返したDataTemplateを適用した結果を表示します。 Contentプロパティに設定された値の型に紐づけられたDataTemplateがある場合

    WPF4.5入門 その47 「コンテンツモデル」 - かずきのBlog@hatena
  • テンプレートセレクタは強力なデザイン実装手法 - しっぽを追いかけて

    XAML を使った UI 構築の実装手法には便利な仕組みがたくさんありますが、自分が最も好きな仕組みは DataTemplateSelector などのテンプレートセレクタです! え?つい最近こんなネタを見たって?ネタがかぶっただけきっと気のせいです!! なんでテンプレートセレクタが好きかというと、オブジェクト指向言語でいうポリモーフィズムを UI の世界で体現したような仕組みだからです 例えばこんな画面のように、先頭だけが他と異なるタイルデザインだったとしても DataTemplateSelector を利用すれば、1つの GridView で ItemsSource に突っ込む ViewModel を先頭だけ変更するだけですっきりと実装できてしまいます やり方は、まず次のような DataTempleteSelector を記述してビルドします /// <summary> /// Dat

    テンプレートセレクタは強力なデザイン実装手法 - しっぽを追いかけて
  • データバインディング

    Last Updated 2011/09/21 データバインディングは WPF のもっとも重要なトピックの一つですが、直感的に理解することはかなり難しいと思います。このページではデータバインディングの具体的な例を挙げて、実務的な解説を試みます。 なお、記事中に出てくる個々のクラスのプロパティやメソッドの詳細については、WPF クラスライブラリリファレンスを参照してください。 WPF はデータドリブン型のプログラミングスタイルを採用しています。これを一言で言うと、プロパティの変化をとらえて何らかの動作をしようとするものです。従来の Windows アプリケーションでは当然のようにコードで実装するところを WPF アプリケーションでは XAML コードだけで実現可能にするという特徴があります。このときに重要な役割を果たすのでデータバインディングです。 Microsoft は XAML コードで

  • http://garicchi.com/?page_id=111

  • C#でJSONのパース - やっさんの雑記

    こんばんはおはようございますこんにちは 今回はC#でJSONのパースをしてみたいと思います。 neueccさんの作られたDynamicJsonという素晴らしいライブラリもありますが、ここでは標準ライブラリを使うことにします。 標準ライブラリでJSONのパースをするには、DataContractJsonSerializerクラスを使います。 なお、.NET Framework 4.0以上が必須です。 まずは使ってみる 使い方はとても簡単で、取得したいオブジェクトの型でDataContractJsonSerializerのインスタンスを初期化して、文字列をMemoryStream経由で読み込ませるだけです。 using System; using System.Collections.Generic; using System.Globalization; using System.IO; u

    C#でJSONのパース - やっさんの雑記
  • 方法: DataContractJsonSerializer を使用する - WCF

    JSON (JavaScript Object Notation) は、クライアント ブラウザーと AJAX 対応の Web サービスとの間で、少量のデータを高速に交換できる効率的なデータ エンコード形式です。 この記事では、.NET 型のオブジェクトを JSON エンコードされたデータにシリアル化し、この JSON 形式のデータを .NET 型のインスタンスに戻すために逆シリアル化する方法について説明します。 この例では、ユーザー定義された Person 型のシリアル化と逆シリアル化を示すためにデータ コントラクトを使用し、DataContractJsonSerializer を使用します。 AJAX 対応エンドポイントで公開されたサービス操作でデータ コントラクト型を使用する場合、JSON でのシリアル化および逆シリアル化は通常 Windows Communication Founda

    方法: DataContractJsonSerializer を使用する - WCF
  • HttpClient を使って JSON データを POST する方法 | Microsoft Docs

    HttpClient を使って JSON データを POST する方法 12/09/2013 15 minutes to read Windows ストアアプリと Windows Phone アプリのサポートチームで公開している Blog のうち、ページビューが多いいくつかの記事を日語に翻訳しています。 今回は HttpClient クラスを使って JSON (JavaScript Object Notation) を送信する方法についてまとめた記事を紹介します。 How to use HttpClient to post JSON data これはフォーラムでよく訊かれるので、HttpClient クラスと DataContractJsonSerializer を使って JSON データをウェブサービスへ POST する方法を説明したいと思います。シリアル化した JSON オブジェクト

  • JSON形式でクラスをシリアライズ・デシリアライズする (C#プログラミング)

    JSON形式でクラスをシリアライズ、デシリアライズするコードを紹介します。 概要 JSON形式でクラスをシリアライズ、デシリアライズする場合には、DataContractJsonSerializer クラスを利用します。 シリアライズする場合には、DataContractJsonSerializer オブジェクトのWriteObject() メソッドを利用します。 デシリアライズする倍には、DataContractJsonSerializer オブジェクトのReadObject() メソッドを利用します。 プログラム プロジェクト設定 新規のWindowsフォームアプリケーションプロジェクトを作成します。アセンブリの参照に、System.Runtime.Serializationを追加します。 UI 下図のフォームをデザインします。 コントロール名は以下の通りです。 ID欄のテキストボック

    JSON形式でクラスをシリアライズ・デシリアライズする (C#プログラミング)
  • neue cc - .NETの標準シリアライザ(XML/JSON)の使い分けまとめ

    今年もAdvent Calendarの季節がやってきましたね。去年は私はC#とJavaScriptで書きましたが、今年はC#とSilverlightでやります。というわけで、この記事はSilverlight Advent Calendar 2011用のエントリです。前日は@posauneさんのSilverlightのListBoxでつくるいんちきHorizontalTextBlock でした。 今回の記事中のサンプルはSilverlight 4で書いています。が、Silverlight用という体裁を持つためにDebug.WriteLineで書いているというだけで、Silverlightらしさは皆無です!えー。.NET 4でもWindows Phone 7でも関係なく通じる話ですねん。 シリアライザを使う場面 概ね3つではないでしょうか。外部で公開されているデータ(APIをネット経由で叩くと

    yokkong
    yokkong 2016/12/07
  • C#で標準のJSONを使うときにはまったこと。 - 異邦人になってみた~~上海生活写真ブログ

    ドットネットフレームワークは4.0を使用しています。 どのアセンブリがどのクラスをサポートしているのかぜんぜんわかりません。 簡単にわかる方法があればいいんでしょうけど。 System.Runtime.Serialization.Jsonを使えと言うことらしいんですが、 型または名前空間名 'Json' は名前空間 'System.Runtime.Serialization' に存在しません。アセンブリ参照が不足しています。 型または名前空間名 'DataContract' が見つかりませんでした。 下の3つを参照に追加しないとだめみたいです。 System.Runtime.Serialization System.ServiceModel System.ServiceModel.Web JSONの定義を作成する。 using System; using System.Collection

    C#で標準のJSONを使うときにはまったこと。 - 異邦人になってみた~~上海生活写真ブログ
  • 1