タグ

2011年7月15日のブックマーク (7件)

  • ステートレスとは何か

    RestWiki をたまに見直すと新たな発見があって面白い。 たとえば先日、「ステートレスなやりとりとは何か(What is Stateless Interaction?)」という箇所を見つけて、興味深く読んだ。このページは以前も絶対に読んでいるはずなのだが、 人間は忘れてしまうものである。 RestWiki の例でも充分わかりやすいのだけれど、自分でも例を思いついたので書きとめておく。 ステートフルサーバとステートレスサーバはどう違うのか。 まずは、ステートフルの例: 客: こんにちは 店員: いらっしゃいませ。○○バーガーへようこそ 客: ハンバーガーセットをお願いします 店員: サイドメニューは何になさいますか? 客: ポテトで 店員: ドリンクは何になさいますか? 客: ジンジャーエールで 店員: +50円でドリンクをLサイズにできますがいかがですか? 客: Mでいいです 店員:

  • データ コントラクトのコレクション型 - WCF

    このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 "コレクション" は、特定の型の項目のリストです。 .NET Framework では、このようなリストは、配列や他のさまざまな型 (ジェネリック List、ジェネリック BindingList<T>、StringCollection、または ArrayList) を使用して表すことができます。 たとえば、コレクションでは指定された顧客のアドレスのリストを保持できます。 これらのコレクションは、実際の型に関係なく、 リスト コレクションと呼びます。 コレクションには、ある項目 ("キー") と別の項目 ("値") の関連付けを表す特殊な形式のものがあります。 これらは、.NET Framework では Ha

    データ コントラクトのコレクション型 - WCF
    noazoh
    noazoh 2011/07/15
  • WCF入門|Memeplexes

    [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 WCFのコントラクトではそのままでは、引数や戻り値にカスタムなクラスを使うことが出来ません。クライアントからサーバーへ独自に定義したクラスを(そのままでは)送れませんし、サーバーからクライアントへ、独自に定義したクラスを(そのままでは)返せないのです。 × ダメなコントラクトの例(マネしないで!) × using System.ServiceModel; namespace Contracts { [ServiceContract] public interface ICalculator { //四角形の面積を計算します [OperationContract] double GetArea(Rectangle rect); } //Error! //(throws Invali

    noazoh
    noazoh 2011/07/15
    データコントラクトはクラスと言いながらも構造体のようなもので、メソッドも持てないし参照渡しもできない
  • DataContractの初期化

    WCFでDataContractとして定義したクラスのメンバを初期化したい、ってことはよくあるけど、以下のようにコンストラクタを追加してみたってどうにもなりません。 [DataContract] public class Shop { [DataMember] public short ID { get; set; } [DataMember] public string Name { get; set; } [DataMember] public string Address { get; set; } [DataMember] public string Phone { get; set; } [DataMember] public string Fax { get; set; } [DataMember] public List<Employee> Employee { get; s

    noazoh
    noazoh 2011/07/15
    DataContract属性を定義したクラスのコンストラクタメソッドが使えない件について
  • C#と諸々 WCFのホスティング

    C#がメインで他もまぁ諸々なブログです おかしなこと書いてたら指摘してくれると嬉しいです(´・∀・`) つーかコメント欲しい(´・ω・`) 【 ホスティング 】 [ ホスティングの種類 ] WCF のホスティングは、大別して以下の3種類があります。 セルフ ホスティング Internet Information Services ( IIS ) によるホスティング Windows Process Activation Service ( WAS ) によるホスティング [ ServiceHost クラス ] WCF のホスティングを実現するのは ServiceHost クラス (System.ServiceModel) です。 このクラスをインスタンス化し、Open メソッドを呼び出すことで WCF サービスが利用できるようになります。 具体的な手順は以下の通りです。 ServiceHos

    noazoh
    noazoh 2011/07/15
  • Use Close and Abort to release WCF client resources - WCF

    The UsingUsing sample demonstrates using the Close and Abort methods to clean up resources when using a typed client. The using statement causes exceptions when the network connection is not robust. This sample is based on the Getting Started that implements a calculator service. In this sample, the client is a console application (.exe) and the service is hosted by Internet Information Services (

    Use Close and Abort to release WCF client resources - WCF
    noazoh
    noazoh 2011/07/15
    WCFクライアントではUsingを使うなと。
  • WCFとUsingブロックの問題

    WCF クライアントはUsingブロック内で使うことはできない、なぜなら予期しない例外が投げられる可能性があるからだ。たとえ例外をキャッチしたとしても、接続が開きっぱなしになることもある。この問題に関するこれまでの経緯と提案されているいくつかの回避策をこれから見ていこう。 .NET におけるリソース管理の要になるのはIDisposableとUsingブロックだ。CLRオブジェクトは別として、.NET世界における全てのオブジェクトのライフスパンはこれらを用いて管理される。だからこそ疑問に思うのも当然のことだ。どうやってMicrosoftはWCFフレームワークについてこんなにお粗末な問題を起こすことができたのだろうか、と。 WCF クライアントの問題としてまず挙げられるのがClose/Disposeメソッドが例外を投げうることだ。このことでFinallyブロックから Disposeメソッドを呼

    WCFとUsingブロックの問題