我成功地解析了URL,但在将字符串变量传递给方法C#时遇到了问题
本文关键字:变量 方法 字符串 遇到 问题 成功 URL | 更新日期: 2023-09-27 18:24:36
我使用这行代码返回我需要的url部分:(inedthis.aspx)
因此,如果你浏览到whatever.aspx,这行代码会以字符串形式返回"whatever":
string currentURL = this.Page.ToString().
Substring(4, this.Page.ToString().Substring(4).Length - 5);
我的问题是使currentURL可用于整个页面。如果我使用以下代码将其全局化(如果每次加载页面时都需要重写,我想做什么?):
public class Globals
{
public static string currentURL =
this.Page.ToString().
Substring(4, this.Page.ToString().Substring(4).Length - 5);
}
编译器存在关键字CCD_ 1的问题。
所以我想我的问题是:
我如何创建一个字符串来存储whatever.aspx的"whatever"部分,并使其在整个项目中都可以访问,当页面加载时,它会将字符串重写到用户所在的当前页面?
哦,放松你的回应,这里没有!
Session
是每个用户的,所以要小心。
这不是一个非常耗时的操作。我不会担心让它静止。
private string currentUrl;
public string CurrentUrl
{
get
{
if (string.IsNullOrEmpty(this.currentUrl))
{
string page = this.Page.ToString();
this.currentUrl = page.Substring(4, page.Substring(4).Length - 5);
}
return this.currentUrl;
}
}
我会有一些继承设置:
public class MyPage : Page
{
private string currentUrl;
public string CurrentUrl
{
get
{
if (string.IsNullOrEmpty(this.currentUrl))
{
string page = this.Page.ToString();
this.currentUrl = page.Substring(4, page.Substring(4).Length - 5);
}
return this.currentUrl;
}
}
}
然后你的页面:
public class HomePage : MyPage
{
public void method()
{
Console.Write(this.CurrentUrl);
}
}
您可以使用ViewState变量或Session变量。
ViewState["currentURL"] = currentURL;
或
Session["currentURL"] = currentURL;
听起来应该将其存储在会话变量中。
session["currentURL"] = this.Page.ToString().Substring(4, this.Page.ToString().Substring(4).Length - 5);
不管怎样,这取决于你打算做什么。如果你正在寻找不同的东西,你需要详细说明。