2017年3月16日木曜日

【C#】.NET3.5だとXML形式選択貼り付け(XML⇒クラスソース)できない

Visual StudioではクリップボードのXML文字列 をクラス(ソースコード)として貼り付ける機能がある。
この機能は、対象のフレームワークを3.5等にしておくと使用できない。
具体的に述べると、以下。

1. XML文字列をコピー(VisualStudioでなく、テキストエディタでも良い)。

2.生成したいcsファイルを開き、メインメニューの[編集]-[形式を選択して貼り付け]-[XMLをクラスとして貼り付ける]

3.通常は以下のようにコードが生成される。あとはシリアライズ・デシリアライズのコードを書けば、設定ファイル読み書きが簡単に実装できる。ちなみに、設定ファイルの実装は、app.configの方がもっと簡単なので、基本的にはそちらをお勧めする。


しかし、以下のように対象のフレームワークを.NET Framework3.5等の古いバージョンにしておくと、


手順1、2を実施しても以下のように貼り付けられない。(コードが空のままとなる)

対象のクライアントがWindows7で.NET Frameworkの更新ができないなどの状況では、.NET Framework3.5を採用する必要があるのだが、この場合、[形式を選択して貼り付け]が使えなくなってしまう。

◆単純な解決法

 以下のように別プロジェクトを追加して、適当なcsファイルを作成しておき、このプロジェクトのみ.NET Frameworkのバージョンを4.5以上にしておく。この状態で手順1、2を行えば、貼り付けられる。あとはそのコードを正式なcsファイルに貼り付ければよい。




0 件のコメント:

コメントを投稿