【发布时间】:2014-10-22 16:29:27
【问题描述】:
我有一个用 c# 编写的页面和一个用 HTML 编写的 web 表单。
我的目标是仅在客户端浏览器上已设置 cookie 时,每次加载 default.aspx 页面时才显示此 html 网络表单。我将通过 webform 中的 php 设置/写入 cookie,因此我假设 c# 代码只需要:
- 如果设置为非,则读取 COOKIE 值,
- 可视化或不可视化 html 网络表单,具体取决于值 cookie 集。
不确定这是否必须在代码后面使用 c# 或仅在 javascript 中完成。
那么,C# 中是否有任何代码允许我调用 HTML 页面并在与 webform/pop-up 相同的页面中打开它? 另外,是否有可能以我只有在设置了 cookie 时才能调用它的方式触发这个 html 页面?
public partial class Read : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["cookie"] != null)
{
ReadCookie();
}
}
protected void ReadCookie()
{
//Get the cookie name the user entered
String strCookieName = Request.QueryString["cookie"].ToString();
//Grab the cookie
HttpCookie cookie = Request.Cookies[strCookieName];
//Check to make sure the cookie exists
if (cookie == null)
{
lblCookie.Text = "Cookie not found. <br><hr>"; -> SHOW HTML-WEBFORM
}
else
{
-> DONT SHOW HTML-WEBFORM
}
}
}
【问题讨论】:
-
请澄清您的问题...“C# 中的任何代码”对代码运行的时间/位置的定义非常模糊。如果您需要 ASP.Net C# 代码和网页之间的双向通信,您可能正在寻找 SignalR 之类的东西。
-
我提到,来自使用 asp.net 用 c# 编写的代码
-
不是很清楚......我假设你已经阅读了asking questions on SO 的指导并决定不发布代码是有充分理由的。不幸的是,这样的决定意味着您需要对问题/目标进行更详细的解释,而不是您发布小代码示例以及要求时所需要的。请尝试解释何时您的“C# 代码”在请求生命周期内运行(或者可能是一些计时器作业或启动代码)。
-
希望这能奏效:我有一个用 c# 编写的页面和一个用 HTML 编写的网络表单。我的目标是仅在客户端浏览器上已设置 cookie 时,每次加载 default.aspx 页面时才显示此 html 网络表单。我将通过 webform 中的 php 设置/写入 cookie,因此我假设 c# 代码只需要: 1-如果设置为未设置,则读取 COOKIE 值,2 - 可视化或不可视化 html webform,具体取决于值 cookie 集。不确定这是否必须在后面的代码中使用 c# 或仅在 javascript 中完成。
-
请下次编辑您的帖子,而不是在 cmets 中添加详细信息。