是的,C#中的WebRequest類是可以復用的。WebRequest類是一個抽象類,用于表示HTTP請求。您可以創建一個繼承自WebRequest的類,然后實現自己的請求邏輯。這樣,您可以在多個地方重用您的自定義WebRequest類。
例如,您可以創建一個名為MyWebRequest的類,繼承自WebRequest,并實現自己的請求邏輯:
using System;
using System.IO;
using System.Net;
using System.Text;
public class MyWebRequest : WebRequest
{
private HttpWebRequest _httpWebRequest;
public MyWebRequest(Uri uri)
{
_httpWebRequest = (HttpWebRequest)WebRequest.Create(uri);
}
public override Stream GetRequestStream()
{
return _httpWebRequest.GetRequestStream();
}
// 實現其他必要的方法,例如GetResponse、BeginGetRequest等
}
然后,您可以在需要發送HTTP請求的地方使用您的自定義MyWebRequest類:
using System;
class Program
{
static void Main()
{
Uri uri = new Uri("https://api.example.com/data");
MyWebRequest request = new MyWebRequest(uri);
using (Stream stream = request.GetRequestStream())
{
// 發送請求的邏輯
}
}
}
這樣,您就可以在多個地方重用您的MyWebRequest類,而不需要每次都創建一個新的WebRequest實例。