aspx のページ html を動的にロードする 2 つの方法を見つけましたが、唯一の問題は、txt ファイルが別のサーバー上にあり、Web サーバー上の仮想パスまたは物理パスを要求する必要があることです。
ファイルパスからではなくURLからAzureからロードできる方法はありますか、またはPageParserまたはBuildManagerに文字列のみを渡すことができる場合。
エラー:
The relative virtual path 'http:/tplexcontent.blob.core.windows.net/commonresources/test123.txt' is not allowed here.
protected void Page_Load(object sender, EventArgs e)
{
//Method 1
var pageView = PageParser.GetCompiledPageInstance("/Page2.aspx", "http://tplexcontent.blob.core.windows.net/commonresources/test123.txt", HttpContext.Current);
(pageView).ProcessRequest(HttpContext.Current);
//Method 2
LoadPage("http://tplexcontent.blob.core.windows.net/commonresources/test123.txt");
}
public static void LoadPage(string pagePath)
{
// get the compiled type of referenced path
Type type = BuildManager.GetCompiledType(pagePath);
// if type is null, could not determine page type
if (type == null)
throw new ApplicationException("Page " + pagePath + " not found");
// cast page object (could also cast an interface instance as well)
// in this example, ASP220Page is a custom base page
_Default pageView = (_Default)Activator.CreateInstance(type);
// call page title
pageView.Title = "Dynamically loaded page...";
// process the request with updated object
((IHttpHandler)pageView).ProcessRequest(HttpContext.Current);
}