LoginSignup
0
2

More than 5 years have passed since last update.

C# はじめました メモ #02 「REST クライアント」

Posted at

Twitterにだらだら書きそうだったのでちょっとまとめて。故あってMac環境なので、IDEにはRider-EAPを使ってます。やっててよかったJetBrains Toolbox!

2日目学習リスト

依存関係(NuGetとかRestoreとか)が少し見えてくる回か。
REST クライアント
https://docs.microsoft.com/ja-jp/dotnet/articles/csharp/tutorials/console-webapiclient

Mac Homebrewの影響を確認する

2017/05/01現在最新のMac版 .Net core1.0.3は、openssl 1.0.2/1.0.3前提なので、Homebrewでバージョンを上げておくこと。今回はこちらを参考にした。
https://medium.com/@katopz/how-to-upgrade-openssl-8d005554401

Rider 特有の事情

csprojファイルは、プロジェクトの二階層目をコンテキストメニューのJump to Sourceで開く。
しかしcsprojファイルにエラーが有るとコンテキストメニューからは開けなくなるので、ダブルクリックが安定のようだった。

○○型であればusingは自動補完してくれるが、Staticメソッドを使うタイプではそれは望めない。using staticで読み込まなければいけないものは注意

この一連のチュートリアルは、プロジェクトを作る段階では指定がないので、Reder利用の場合、gitに上がっているサンプル通り作りたい場合、開始する前にnamespaceの確認を行ったほうがいい。

DataContractJsonSerializer は強力

.Net Coreの機能。
ActionScriptでもJavaScriptでも型変換きれいにするためにそれなりの工数が必要だったものだけど。

更に[DataMember]で取得するJASON上のプロパティと値を結び付けられる。(これによってプロパティとクラスのメンバが同一である必要がなくなる)

[IgnoreDataMember]をつけたプロパティはJSONに影響が受けないメンバの明示となる。

2日目を通して

今日の気づきは次の通り。

  • ストリーミングで値を取得する場合の処理は、C#が言語として担うのでなく、.Netの機能が担う
  • Macで動かす場合にはOpenSSLなどの注意が必要
  • MacやRider特有の問題が存在する
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2