Tag: asp.net

我必须在处理之前closures()一个SQLConnection吗?

在这里关于一次性对象的其他问题 ,我们应该在使用块结束之前调用Close()吗? using (SqlConnection connection = new SqlConnection()) using (SqlCommand command = new SqlCommand()) { command.CommandText = "INSERT INTO YourMom (Amount) VALUES (1)"; command.CommandType = System.Data.CommandType.Text; connection.Open(); command.ExecuteNonQuery(); // Is this call necessary? connection.Close(); }

表单身份validation超时与sessionState超时

我有代码,我正在通过关于网站会话超时。 在web.config中我遇到了这个代码。 <authentication mode="Forms"> <forms loginUrl="~/Auth/SignOn.aspx" timeout="40" slidingExpiration="true" /> </authentication> <sessionState timeout="30" /> 有谁知道一个人是否先于另一个人,以及他们有什么不同。 谢谢。

在控制器.NET MVC中创build一个URL

我需要能够在控制器的Action上构build一个链接来发送电子邮件。 什么是最好的做法呢? 如果我的路线改变,我不想自己构build它。 我应该有每个电子邮件的视图和呈现,并发送它? 这可能是一个很好的做法。

如何将您的ASP.NET应用程序部署到活服务器?

我正在寻找不同的技术/工具来部署一个ASP.NET Web应用程序项目( 不 ASP.NET网站)到生产? 我对持续集成构build服务器在某个位置丢弃二进制文件和第一个用户请求到达这些二进制文件的时间之间发生的工作stream程特别感兴趣。 你正在使用一些特定的工具或只是XCOPY? 应用程序如何打包(ZIP,MSI,…)? 首次部署应用程序时,如何设置应用程序池和虚拟目录(是否使用手动或使用某种工具创build它们)? 当静态资源发生变化(CSS,JS或者图像文件)时,你重新部署整个应用程序还是仅仅修改了资源? 如何处理程序集/ ASPX页面更改? 你跟踪给定应用程序的所有部署版本,万一出现问题,你有程序恢复到以前已知的工作状态的应用程序? 随意完成以前的列表。 以下是我们用来部署ASP.NET应用程序的方法: 我们将Web部署项目添加到解决scheme,并将其设置为构buildASP.NET Web应用程序 我们将一个安装项目( 不是 Web安装项目)添加到解决scheme,并将其设置为Web部署项目的输出 我们添加一个自定义安装操作,并在OnInstall事件中运行一个自定义构build的.NET程序集,该程序集使用System.DirectoryServices.DirectoryEntry在IIS中创build应用程序池和虚拟目录(此任务仅在部署应用程序时首次执行) 。 我们支持IIS中的多个网站,虚拟目录的身份validation以及设置应用程序池的身份。 我们在TFS中添加一个自定义任务来构build安装项目(TFS不支持安装项目,所以我们不得不使用devenv.exe来构buildMSI) MSI安装在实时服务器上(如果有先前版本的MSI,它首先被卸载)

在类库中添加System.Web.Script引用

我目前正在将代码从我的app_code文件夹移动到类库。 我用[System.Web.Script.Serialization.ScriptIgnore]属性标记了几个方法。 我的类库不能看到这个名字空间。 我的添加引用对话框看不到这个名字空间。 如何正确使用类库中的这个标签? 这里是错误: 无法findtypes或命名空间名称'ScriptIgnoreAttribute'(你是否缺lessusing指令或程序集引用?)

阅读后数据提交到ASP.Net窗体

我有一个在asp.net应用程序工作login表单。 标准的东西,用户名和密码文本框和一个button来处理login。 工作正常。 我有一个新的要求,允许用户从一个单独的纯HTML页面input用户名和密码,这是不属于我的asp.net应用程序的一部分。 我打算实现这个使用标准的HTML表单,input,提交button等。表单动作将是我的asp.netlogin页面的URL,其方法将是POST。 我想在asp.netlogin表单的页面背后的C#代码,大概是在Page_Load事件,是要检查页面的请求是否包含一个用户名和密码值被传入。如果这样做,那么我需要读取这些值并处理login,就像有人点击了asp.net页面上的loginbutton一样。 如果不是的话,我会照常显示login表单。 如何检查页面请求中是否存在并读取用户名和密码值。

如果当前的ASP.NET会话为空,我该怎么办?

在我的web应用程序中,我这样做来读取会话variables: if (HttpContext.Current.Session != null && HttpContext.Current.Session["MyVariable"] != null) { string myVariable= (string)HttpContext.Current.Session["MyVariable"]; } 我明白为什么要检查为什么HttpContext.Current.Session [“MyVariable”]为空(该variables可能尚未存储在会话中,或者由于各种原因会话已被重置)为什么非常重要,但是为什么需要检查如果HttpContext.Current.Session为空? 我的理解是会话是由ASP.NET自动创build的,因此HttpContext.Current.Session不应该为空。 这个假设是否正确? 如果它可以为空,是否意味着我应该检查它之前存储的东西: if (HttpContext.Current.Session != null) { HttpContext.Current.Session["MyVariable"]="Test"; } else { // What should be done in this case (if session is null)? // Is it possible to force the session to be created if it doesn't exist? […]

我应该如何将多个parameter passing给ASP.Net Web API GET?

我正在使用.Net MVC4 Web API(希望)实现一个RESTful api。 我需要传递几个参数给系统,​​并执行一些操作,然后返回一个对象列表作为结果。 具体来说,我传递了两个date,并返回落在他们之间的logging。 我还跟踪返回的logging,以便后续调用不会在系统中重新处理。 我已经考虑了一些方法: 将params串行化成一个单独的JSONstring,并在API中将其分开。 http://forums.asp.net/t/1807316.aspx/1 传递查询string中的参数。 将多个查询parameter passing给restful api的最好方法是什么? 在path中定义参数:api / controller / date1 / date2 使用本质上允许我传递参数的参数的POST。 从Web API(目前)支持它开始研究ODATA。 这方面我还没有做太多的工作,所以我不太了解它。 看起来正确的REST实践指示何时拉取数据,您应该使用GET。 但是,GET也应该是无效的(不产生副作用),我不知道我的具体实现是否违反了API标记logging,因此我产生了副作用。 这也导致了我支持可变参数的问题。 如果input参数列表发生变化,如果发生了很多事情,则必须重新定义您的select3的路线,这将非常繁琐。 如果参数是在运行时定义的,会发生什么? 无论如何,对于我的具体实施,哪个select(如果有的话)似乎最好?

什么是ASP .NET身份的要求

有人可以解释一下,在新的ASP.NET Identity Core中声明机制的含义是什么? 正如我所见,有一个AspNetUserLogins表,其中包含UserId , LoginProvider和ProviderKey 。 但是,我仍然无法理解或find有关何时将数据添加到AspNetUserClaims表的信息以及该表用于何种情况?

避免不带参数的SQL注入

在这里我们正在讨论在我们的代码中使用参数化的sql查询。 我们有两方面的讨论:我和其他一些人说,我们应该总是使用参数来防止SQL注入和其他人认为这是不必要的。 相反,他们想要用所有string中的两个撇号replace单撇号来避免sql注入。 我们的数据库都运行Sql Server 2005或2008,我们的代码库运行在.NET框架2.0上。 让我给你一个简单的例子在C#中: 我希望我们使用这个: string sql = "SELECT * FROM Users WHERE Name=@name"; SqlCommand getUser = new SqlCommand(sql, connection); getUser.Parameters.AddWithValue("@name", userName); //… blabla – do something here, this is safe 而其他人想要这样做: string sql = "SELECT * FROM Users WHERE Name=" + SafeDBString(name); SqlCommand getUser = new SqlCommand(sql, connection); //… blabla – […]