小编Joe*_*ton的帖子

ASP.Net FormsAuthentication Redirect丢失Redirect和Application_AuthenticateRequest之间的cookie

我有一个FormsAuthentication cookie,它是永久性的,并且可以在开发,测试和生产环境中独立工作。我有一个可以进行身份​​验证的用户,创建了用户对象,并将身份验证Cookie添加到了响应中:

'Custom object to grab the TLD from the url
authCookie.Domain = myTicketModule.GetTopLevelDomain(Request.ServerVariables("HTTP_HOST"))
FormsAuthentication.SetAuthCookie(authTicket.Name, False)
Response.SetCookie(authCookie)
Run Code Online (Sandbox Code Playgroud)

对用户进行一点点处理以检查第一次登录,安全性问题等,然后使用以下提示重定向用户:

Session.Add("ForceRedirect", "/FirstTimeLogin.aspx")
Response.Redirect("~/FirstTimeLogin.aspx", True)
Run Code Online (Sandbox Code Playgroud)

通过调试中断,我可以验证cookie集合是否既包含与我出于不同目的设置的身份验证无关的cookie,也包含表单身份验证cookie。然后,该过程的下一步发生在global.asax中的ApplicationAuthenticateRequest处:

Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
    Dim formsCookieName As String = myConfigurationManager.AppSettings("FormsCookieName")
    Dim authCookie As HttpCookie = Request.Cookies(formsCookieName) 
Run Code Online (Sandbox Code Playgroud)

在这一点上,对于这个一个用户authCookie来说还算是什么。我还有15,000个其他用户没有受到这种方式的影响。但是,对于一个用户而言,cookie只是消失了而没有任何痕迹。我以前已经通过w3wp.exe异常,状态服务器异常和其他与IIS进程相关的异常看到了这一点,但是事件日志中没有任何异常。w3wp.exe不会崩溃,状态服务器有一些超时,但它们似乎不相关(已通过时间戳验证),并且仅在该一个域中的该用户身上发生(此代码在2个不同的TLD中使用,大约有10个其他子域) 。

我正在调查的一条途径是cookie可能太大了。我认为应该检查进入响应的cookie的大小,并且我认为它不会以这种方式对其产生影响。关于请求为何可能转储cookie的任何想法?

注意:我提到的我设置的辅助cookie也将被转储(非常小)。

编辑注释:发生这种情况时,会话令牌不会丢失。但是,由于身份验证cookie丢失,因此它将被忽略并在后续登录时被替换。

asp.net cookies redirect iis-6 forms-authentication

3
推荐指数
1
解决办法
7106
查看次数

在C#中,使用var的推断变量如何在内存和生命周期方面表现出来?

好吧,我一直在阅读我在var上找到的所有东西,我很确定我已经掌握了他们的基本行为和类型推断.我一直是显式类型的主要支持者,所以var在我阅读代码时让我有点前卫.所以我对它的内存使用情况以及在变量的内存生命周期过程中用var声明的变量的行为有几个问题.

由于var是对显式或匿名类型的推断,因此将其内存分配在相应的类型的相同位置,或者在堆上普遍创建var,并将其作为对象进行访问.举个例子:

int i = 5;  // puts this on the stack
var i = 5;  // does this also go on the stack?
Run Code Online (Sandbox Code Playgroud)

声明的var在初始化后是否具有常量类型,或者也可以进行调整?我问这个,因为我不能指定此文档中找到,我只是读的东西在这太问题@Eric利珀特:

变量是其内容发生变化的存储位置

测试了以下代码后,即使在IDE级别,我也看到了隐式转换异常.我目前没有LINQ的经验来对匿名类型进行类似的测试.他们是否遵循同样的行为?IDE是否会在设计时识别出类型不匹配,或者此类代码是否会收到运行时异常?

var i = 5;    // Initializes as int, value is 5
i = "Steve";  // Type casting error
Run Code Online (Sandbox Code Playgroud)

最后,是否有一种情况你可以想到你在设计时可能知道哪种类型但是无论如何都要谨慎使用var?我问,因为我已经看过人们这样做的代码示例,而且从我读过的内容来看,它只是懒惰编码.

编辑:我意识到有很多文章在讨论这个话题,但我没有找到任何具体回答这些问题的文章(虽然有些暗示某种方式).我很乐意阅读您认为与这些主题相关的任何文档,请发布链接.

c# memory-management type-inference

3
推荐指数
2
解决办法
840
查看次数

如何限制IIS 7中网站的CPU使用率?

我有一个asp.net MVC网络应用程序,它处理图像并调整它们的大小,除了它经常占用我的所有服务器资源的事实之外,它工作得很好.如何限制这个Web应用程序消耗很少的CPU?它只是过程图像,所以我不关心它的响应性,因为它并不重要.

asp.net asp.net-mvc iis-7

3
推荐指数
1
解决办法
2548
查看次数

document.GetElementById不适用于任何类型的浏览器

我正在尝试获取输入的值(text/textarea)并且不document.getElementById('rtext').value返回任何内容.如果我设置了默认值(value ="XXX"),则返回该值,如果我编辑它,则返回.

这是一些示例:

<div class="forms">
    <p><textarea id='rtext'></textarea></p>
</div>
Run Code Online (Sandbox Code Playgroud)

我提到表单元素<textarea>不是任何形式的一部分,我只是被迫使用document.getElementById.没有jQuery,没有this.form.Id.value

请帮忙.谢谢

html javascript

2
推荐指数
1
解决办法
6602
查看次数

如何使页面的div高度长度

我试图得到一个内容div来基本上在我的标题和我的脚之间运行页面的整个高度.如果我使用:

  #content{ height: 100%; } 
Run Code Online (Sandbox Code Playgroud)

它只会与div中的内容一样高.有时我可能只有一个句子但是想要div(带背景或边框)来运行屏幕的长度,直到只有75px高大的页脚.

有没有办法用CSS轻松做到这一点?目前我所拥有的是:

  <style>
  #content {
  margin-top: 0px;
  height: 800px;
  width: 800px;
   margin-left: auto;
   margin-right: auto;
    background-color: #E0E0E0 ;
   }
  </style>
   </head>
  <body>
  <div id="content"> 
  this is a div!  with some centered crap
  </div>
Run Code Online (Sandbox Code Playgroud)

html css jquery

2
推荐指数
1
解决办法
3916
查看次数

如何在asp.net.vb中提交按钮?

我目前正在学习使用asp.net编程,我正在编写以下问题寻求帮助:

我试图在下面执行以下连接,但是当我在浏览器中单击按钮连接时,没有任何反应.

aspx.vb代码:

  Imports System.Data
  Imports System.Data.SqlClient
  Imports System.Configuration

Partial Class _Default
Inherits System.Web.UI.Page

' Public Sub Button1(ByVal sender As Object, ByVal e As System.EventArgs)
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim connectionString As String
    Dim connection As SqlConnection
    connectionString = ConfigurationManager.ConnectionStrings("SQLDbConnection").ToString
    connection = New SqlConnection(connectionString)
    Try
        connection.Open()
    Catch ex As Exception
        MsgBox("Not working")
    End Try
    If connection.State = 1 Then
        MsgBox(" working")
    End If
End Sub
End Class
Run Code Online (Sandbox Code Playgroud)

asp.net代码:

 <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" …
Run Code Online (Sandbox Code Playgroud)

vb.net asp.net

2
推荐指数
1
解决办法
1万
查看次数

使用eval在gridview列中进行数据绑定

我hava网格包含一个用于显示国家/地区名称的列.我需要在该列中显示值作为contrycode - 国家名称的前10个字母(在印度).我在项目模板中使用Eval函数进行了尝试:

<asp:TemplateField>
  <ItemTemplate>
      <asp:Label ID="CountryNameLabe" runat="server" Text='<%# Eval("CorporateAddressCountry").SubString(0,6) %>' ></asp:Label>
  </ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)

但它显示错误.我可以在eval中使用自定义函数吗?请帮忙

c# asp.net

1
推荐指数
1
解决办法
3万
查看次数

连接变量

我正在尝试使用从我的Web表单上的下拉列表中选择的值创建到期日期,但是我无法连接Month变量值和Year变量值.我收到错误:错误运算符'&'未定义类型'String'和System.Web.UI.WebControls.ListItem'.我也尝试使用"+"但得到同样的错误.

这是我的代码:

Dim Month = monthDropDownList.SelectedValue
Dim Year = yearDropDownList.SelectedItem
Dim MonthYear = Month & Year
Dim ExpirationDate As Date = MonthYear
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

vb.net

1
推荐指数
1
解决办法
328
查看次数

使用html.ActionLink而不是html编码

我希望返回以下输出

<a href="#"><img src="/images/icons/tick.png" alt="" />More info</a>
Run Code Online (Sandbox Code Playgroud)

如果我执行以下操作,则内​​容将以html编码.

<%= Html.ActionLink("<img src='/images/icons/tick.png' />More info", "OrderRegion", "Campaign", new {id = Model.Campaign.Id}, null) %>
Run Code Online (Sandbox Code Playgroud)

如何禁用html编码?

asp.net asp.net-mvc-2

0
推荐指数
1
解决办法
4921
查看次数

Foreach循环问题

我有一个数组如下

$posts = array(
    0 => array('user' => 'Charlie', 'message' => 'First message'),
    1 => array('user' => 'Charlie', 'message' => 'Second message'),
    2 => array('user' => 'Charlie', 'message' => 'Third message TEXT!'),
    3 => array('user' => 'Charlie', 'message' => 'Fourth message')
);
Run Code Online (Sandbox Code Playgroud)

如果它在消息里面,我想用"NEXT"替换"TEXT".我怎么能这样做?

我试过了

foreach ($posts as $r)
{
    $r['message'] = str_replace('TEXT', 'NEXT', $r['message']);
}
Run Code Online (Sandbox Code Playgroud)

但似乎没有奏效.

php foreach loops

0
推荐指数
1
解决办法
205
查看次数

如何使用asp:asp中的表:ListView LayoutTemplate ItemTemplate

当我调用ListView的DataBind()方法时,我收到以下异常消息

'Table' cannot have children of type 'ListViewDataItem'.

这是我的标记

<asp:ListView ID="lv" runat="server">
    <LayoutTemplate>
        <asp:Table ID="t" runat="server" CssClass="contentframework">
            <asp:TableHeaderRow>
                <asp:TableHeaderCell>1</asp:TableHeaderCell>
                <asp:TableHeaderCell>2</asp:TableHeaderCell>
            </asp:TableHeaderRow>

            <asp:TableRow ID="itemPlaceHolder" runat="server" />

        </asp:Table>


    </LayoutTemplate>

    <ItemTemplate>
        <asp:TableRow>
            <asp:TableCell><%# Eval("1") %></asp:TableCell>
            <asp:TableCell><%# Eval("2") %></asp:TableCell>
        </asp:TableRow>
    </ItemTemplate>

    <EmptyDataTemplate>
        <h2>No Records!</h2>
    </EmptyDataTemplate>
</asp:ListView>
Run Code Online (Sandbox Code Playgroud)

c# asp.net listview

0
推荐指数
1
解决办法
1万
查看次数

在HTML页面中我们可以使用jsp代码

page.html我们可以使用javascript代码,我接受,但我们可以在html文件中使用jsp和tld文件.

请解释.

html jsp

-5
推荐指数
1
解决办法
4612
查看次数