.NET Framework 4クライアントプロファイル+ System.Web.DLL?
-
12-11-2019 - |
質問
現在、.NET 4クライアントプロファイルのアプリケーションを開発しています。これは、Windows Updateを介してほとんどのホームコンピュータに存在するバージョンです。
しかし、このバージョンに存在しないため、System.Web.dll
への参照を追加できません - 私は何をすべきですか?
アプリケーションと一緒にSystem.Web.dllを展開することをお勧めします。私は本当にHTTP接続が必要ですので、私のアプリケーションを回避策として変更することはできません。.NET 4(クライアントプロファイルなし)にアプリケーションをターゲットにしています(クライアントプロファイルなし)クライアントプロファイルのみを持つコンピュータでは機能しない可能性がありますか?
解決
Net 4クライアントプロファイル ほとんどの存在になるバージョン Windows Update を介したホームコンピュータ
本当にそうではありません。.NET 4(クライアントプロファイルまたはNOT)現在、デフォルトではWindowsの前にあらゆる事前に存在しません。たとえば、Windows 7には.NET 4.0ではなく.NET 3.5 SP1が付属しています。Windowsの更新があるかもしれませんが、オプションです。
したがって、あなたは完全な.NET 4フレームワークをターゲットにするかもしれません。
オペレーティングシステムと.NET Frameworkバージョン間のリンクは、ここ。チェックマークは、バージョンがボックスから入手可能であり、サインがインストールできることを意味します。
は、4.5,4.6、および4.6.1がすべてインプレース更新であり、それらのいずれかを持つシステムも4.0を持つシステムがあると考えられています。
他のヒント
.NET 4.0ではなく.NET 4.0ではなく、4.0クライアントプロファイルをターゲットにしている場合は、前提条件。これにより、アプリケーションをインストールするときにインストールすることができます。
Sockets を.NET 4.0クライアントを実行すると使用できます。プロファイル、それらはSystem.Net
にあります。 のみは、次のように適用されたときにSystem.Web
を望みます。
システム.Web名前空間電源 有効にするクラスとインタフェース ブラウザサーバ通信。この ネームスペースにはHttpRequestが含まれています 豊富なクラス 現在のhttpに関する情報 リクエスト; httpresponseクラス HTTP出力をクライアントに管理します。そして httpServerutilityクラス サーバーサイドへのアクセスを提供します ユーティリティとプロセスSystem.Web Cookieのクラスも含まれています 操作、ファイル転送、例外 情報、および出力キャッシュ制御。
HTTPWebRequestを使用したい場合は、.NET 4のクライアントプロファイルで利用可能です。
これは、.NET 4クライアントプロファイルを使用して新しいコンソールアプリを作成し、これをProgram.csに貼り付けるだけで、...
using System;
using System.IO;
using System.Net;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
var request = WebRequest.Create("http://google.com");
var response = request.GetResponse();
using (var s = response.GetResponseStream())
using( var sr = new StreamReader(s))
{
Console.Write(sr.ReadToEnd());
}
Console.ReadKey();
}
}
}
.
あなたはあなたのコメントのいずれかでhttpCookiecollectionについて尋ねました。HttpWebRequestはクッキーを保存するためにCookieContainerを使用しているようです。
System.Web.dll
のコピーをクライアントに展開しても問題を解決しない場合でも。そして、問題は次のとおりです。.NET 4クライアントプロファイル用にコンパイルされたアセンブリから.NET 4プロファイル(クライアントではなく)のコンパイルされたアセンブリにリンクすることはできません。唯一の解決策は、アセンブリをクライアントプロファイルにターゲティングすることです。