Tag: asp.net

什么是GenericIdentity?

任何人都可以简单地解释一下GenericIdentity的用途以及在哪里使用它。

无法将类型’string’隐式转换为’int’

我一直得到调试错误“不能在C#中隐式地将类型’字符串’转换为’int’”。 这是我的代码片段: private void button2_Click(object sender, EventArgs e) //button to start takedown { byte[] packetData = System.Text.ASCIIEncoding.ASCII.GetBytes(“”); string IP = “127.0.0.1”; int port = “80”; IPEndPoint ep = new IPEndPoint(IPAddress.Parse(IP), port); Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); client.SendTo(packetData, ep); }

从局部视图中获取当前控制器和操作

我正在使用以下内容获取asp.net MVC3中的当前控制器和操作: var currentAction = routeData.GetRequiredString(“action”); var currentController = routeData.GetRequiredString(“controller”); 这非常有效。 但是,如果我从我的布局调用的局部视图中调用它,则“Layout”将作为当前控制器返回。 这当然是正确的行为,但有没有办法访问父控制器的名称? 编辑以进一步说明: 我在_Layout.cshtml中调用我的菜单控制器和部分视图: @Html.Action(“Menu”, “Layout”) 然后从该菜单局部视图中,我调用返回当前操作和控制器的代码。

如何在ASP.NET中允许多种身份validation方法?

我正在构建一个新的ASP.NET MVC应用程序(在C#中),其中一个要求是创建一个新的成员数据库。 为此,我们需要角色来管理不同类型的成员和配置文件,以管理附加到每个成员的其他元数据。 到目前为止,只需使用标准的MembershipProvider,RoleProvider和ProfileProvider作为.NET Framework的一部分提供。 但是,问题是我想允许不同的身份validation方法。 我希望帐户和登录凭据具有一对多关系(一个帐户可以附加一些登录凭据)。 例如,用户可能同时将OpenID和ActiveDirectory帐户附加到其帐户。 但是,在尝试了几种方法之后,我们选择了MembershipProvider路线(解释了它是如何实现的,如下所示)。 我的问题是,人们之前是如何做到这一点的,以及人们如何建议我接近它? 它似乎是在很多网站上实现的东西,但在这里的搜索并没有返回任何可靠的东西。 编辑:在隔夜和今天早上四处寻找好几个小时之后 – 我仍然没有意识到屠杀一个会员提供者将是最简单的选择。 有多个MembershipProviders会产生相同的效果吗? BOUNTY EDIT:没有回复,我假设没有更好的解决方案,我发布的答案。 这是真的吗? 我正在提供奖励,试着看看是否有人对此有任何进一步的想法以及是否有更好的选择。 BOUNTY ACCEPT EDIT:我认为WIF是下面接受的答案,对于.NET 4版本和其他版本可能适用于3.5。 除此之外,也许一个被屠杀的MembershipProvider或改编的可能仍然是相关的。

ASP.default_aspx’不包含’IssuesGrid_OnItemUpdated’的定义,也没有扩展方法’IssuesGrid_OnItemUpdated’

我使用Telerik asp.net/ajax控件创建了一个gridview,当我在本地运行应用程序时,网格工作正常,但当推送到我的服务器时,我的所有方法都得到了相同的错误: ASP.default_aspx’ does not contain a definition for ‘IssuesGrid_OnItemUpdated’ and no extension method ‘IssuesGrid_OnItemUpdated’ accepting a first argument of type ‘ASP.default_aspx’ could be found (are you missing a using directive or an assembly reference?) 我已经尝试删除网格中的引用并再次创建它并让VS创建方法然后它将工作,直到我为所有抛出错误的方法执行该操作然后它重新开始。 这是aspx页面: 以下是我的cs文件中的方法: protected void Issues_OnItemUpdated(object sender, GridUpdatedEventArgs e) { if (e.Exception != null) { e.KeepInEditMode = true; e.ExceptionHandled = […]

ASP.NET:在客户机上获取文件路径(任何可能的解决方案/解决方法?)

我在.aspx页面上有一个文件上传控件,我在那里提取基本文件信息。 要求是我需要将所选文件的绝对路径从客户机的机器保存到数据库。 我已经阅读过这个网站以及其他地方的ASP.NET本质上由于安全原因不允许从客户机上读取信息。 但我想知道是否有办法解决这个问题,使用js或其他东西来获取绝对路径,然后将其传递给asp.net变量?

在ASP.NET(C#)中实现安全,独特的“一次性”激活URL

我有一个场景,我正在构建的网站的用户需要能够在不必登录的情况下将一些基本信息输入到webform中。 该站点正在使用ASP.NET / C#开发,并使用MSSQL 2005作为其关系数据。 将向用户发送来自站点的电子邮件,为他们提供唯一链接以输入他们所需的特定信息。 该电子邮件与我们在注册论坛等网站时所获得的电子邮件风格非常相似,其中包含一个随机生成的唯一URL参数,专门用于单一目的(例如validation论坛的电子邮件地址)。 我的问题是关于这个问题的安全实现。 我正在考虑使用GUID作为唯一标识符,但我不确定它在安全领域的影响。 GUID是否足够长,以至于不能轻易猜到值(或随着时间的推移强迫)? .NET的GUID实现是否足够随意,因为在“密钥空间”中生成所有可能值的机会相等? 如果使用GUID是一种可接受的方法,那么网站是否应该通过URL重写或通过将数据表中的信息与GUID相关联来重定向到信息? 使用URL重写会隐藏数据的真正来源吗? 我应该考虑使用TSQL的SELECT NEWID()作为.NET实现的GUID生成器吗? 我对这个问题的处理方法完全错了吗? 非常感谢, 卡尔

ASP.NET中的简单Facebook Connect演示

有没有人在asp.net应用程序中有一个简单而成功的facebook连接演示实现。 我正在开发一个asp.net Web应用程序,并希望facebook connect成为登录的主要方法。

来自HttpHandler的图片不会在浏览器中缓存

我正在使用IHttpHandler从数据库提供图像。 相关代码在这里: public void ProcessRequest(HttpContext context) { context.Response.ContentType = “image/jpeg”; int imageID; if (int.TryParse(context.Request.QueryString[“id”], out imageID)) { var photo = new CoasterPhoto(imageID); if (photo.CoasterPhotoID == 0) context.Response.StatusCode = 404; else { byte[] imageData = GetImageData(photo); context.Response.OutputStream.Write(imageData, 0, imageData.Length); context.Response.Cache.SetCacheability(HttpCacheability.Public); context.Response.Cache.SetExpires(DateTime.Now.AddMinutes(5)); context.Response.Cache.SetLastModified(photo.SubmitDate); } } else context.Response.StatusCode = 404; } 问题是浏览器不会缓存图像,可能是因为我没有在响应头中指出正确的东西。 我认为HttpCachePolicy属性上的部分调用方法会强制浏览器保留图像,但事实并非如此。 我认为“正确”的事情是让处理程序返回没有图像的304状态代码,对吧? 如何使用IHttpHandler实现这一目标? 编辑: 根据最佳答案,我运行了此代码,它完全解决了问题。 是的,它需要一些重构,但它通常会certificate我所追求的是什么。 […]

引用嵌套控件

我有两个网格视图 – 一个嵌套在另一个 – 我试图以编程方式设置子网格的数据源,但我不知道如何引用它。 我试过这个: RadGrid radGridDetails = RadGridResults.FindControl(“RadGridDetails”) as RadGrid; radGridDetails.DataSource = myList.ToList(); 但是这会返回NullReferenceException。 有人可以告诉我如何实现这一目标吗?