もう一度asp.netの専門家に連絡を取り、答えを得たいと思っています。私は本当にここで立ち往生しており、助けを求めています. うまくいけば、私の質問に反対票が投じられず、人々が単に私のアプローチを判断するのではなく、純粋に技術的な観点から答えを得ることができます.
以前、私は次のように質問を投稿しました: asp.net asp.net ページをページ変数に変換します。
次に、次のページを見ましたが、それでもうまくいきません。
System.Reflection を使用して ASP.NET 2.0 aspx ページを読み込みますか?
Web アプリケーション内で、"WebForm1.aspx" のようなコード内の任意の場所で Web ページを参照し、そのページのコントロールのリストを取得できるようにしたいと考えています。この観点から見てください。過度に分析しないでください。出来ますか?
私のページ変数 p には、WebForm1.aspx のコントロールがないようです
これが私のコードです。
助けてください。
protected void Page_Load(object sender, EventArgs e)
{
string[] filePaths = Directory.GetFiles(Server.MapPath("~/"), "*.*", SearchOption.AllDirectories);
foreach (string filepath in filePaths)
{
if (filepath.EndsWith(".aspx"))
{
Response.Write(filepath + "<br/>");
string[] folders = filepath.Split('\\');
string filename = folders[folders.Count() - 1];
string fullpath = "~/" + filename;
Page p = BuildManager.CreateInstanceFromVirtualPath("~/"+fullpath, typeof(Page)) as Page;
List<String> controlList = new List<String>();
ResourceManager.AddControls(p.Controls, controlList);
foreach (string str in controlList)
{
Response.Write(str + "<br/>");
}
}
}