小编Aar*_*ron的帖子

ASP.Net MVC中的User.Identity.Name空白

正如标题所示.

只需在我的HomeController中,我就有:

string Username = User.Identity.Name;
Run Code Online (Sandbox Code Playgroud)

为什么这个值总是空白?

我必须在web.config中放置一些特殊内容才能获得此值.我已经尝试过VS dev web服务器以及Windows Server 2003 IIS服务器.

它必须是简单的东西,在IIS中的服务器设置或其他东西,因为代码是如此简单,似乎是引用此值的正确方法.

多谢

iis asp.net-mvc

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

IIS7基本身份验证,用于保护使用表单身份验证的站点

这应该比它证明的要简单得多!

我有一个ASP.Net Web应用程序,它使用FORMS身份验证来保护站点的一部分(即成员登录区域).

现在我只想在整个网站上放置一个传统/简单的浏览器密码弹出窗口(目录安全性),因为我们正在测试它,并且不希望任何人偶然发现整个网站并看到未完成的版本等!

在旧的IIS版本中,这曾经非常简单.

我已经"安装了基本身份验证"(因为IIS7现在没有开箱即用).但是当我启用它时,它告诉我我不能同时启用任何基于重定向的身份验证(这是我的FORMS身份验证使用的).

所以这只是愚蠢的.

必须有一种超级简单的方法来简单地在整个站点上放置一个廉价的弹出密码,而不会影响您在web.config中为实际应用程序设置的其他身份验证方法.

非常感谢..

更新 IP访问限制并不是出于以下几个原因: - 我的IP是动态的,因此不断变化. - 我不想打扰任何需要看到该网站的人,要求他们在他们的机器上调出一个控制台并计算他们的IP地址或检查他们的路由器等.其中许多是非技术性的商业用户,它会花一个小时来计算他们的IP地址. - 基本身份验证和Windows身份验证都不允许底层表单身份验证保留在下面.

我们在这里看到的是一个巨大的案例,微软试图过度设计事物,因此超级简单的古老要求不再可能或不易实现.这有可能以某种方式...任何人???

authentication iis-7 basic-authentication

16
推荐指数
2
解决办法
5359
查看次数

维护ASP.NET MVC中动态的复选框列表的状态

我有一个名为"PropertyFeature"的类,它只包含PropertyFeatureID和Description.它是通过映射到SQL Server数据库表的LINQ to SQL创建的正确模型.示例实例/行将是:

PropertyFeatureID: 2
Description: "Swimming Pool"
Run Code Online (Sandbox Code Playgroud)

行数(PropertyFeatures)当然可以增长和缩小,因此我想动态呈现一个复选框列表,以便用户可以选择其中任何一个.我可以很容易地动态渲染Checkbox,例如:

<%foreach (var Feature in (ViewData["Features"] as IEnumerable<MySolution.Models.PropertyFeature>)) { %>
<%=Html.CheckBox("Features", new { @id = Feature.PropertyFeatureID, @value = Feature.PropertyFeatureID })%><label for="Feature<%=Feature.PropertyFeatureID%>"><%=Feature.Description%></label>
<%}%>
Run Code Online (Sandbox Code Playgroud)

我为每个复选框指定ID并呈现匹配的标签,以便用户可以直观地单击标签并切换复选框 - 这很有效.

我将CheckBox的"名称"设置为"Features",因此所有复选框都以相同的名称呈现,并且MVC Model Binder在发布表单时将它们堆叠到一个名为"Features"的集合中.这很好用.

提交表单后,我使用选中的值并存储它们,因此我需要实际的整数值,因此我知道选择了哪个PropertyFeature,而不仅仅是一堆布尔值和字段名称.理想情况下,我希望它可以作为一个易于使用的数组或集合.

单击按钮时,我可以从Controller方法中检索所选值,因为我已将参数指定为int [] Features.

但问题是它没有维持状态.也就是说,当我单击提交按钮并重新加载页面(再次显示该表单)时,我希望所有动态复选框保持其已检查状态(或不保持).所有这一切我已经创造了其他领域Html.DropDownList,并Html.TextBox都保持自己的状态没有任何成功都在同一页上以相同的形式问题.

我花了几个小时阅读关于类似问题的所有其他线程和文章,并且有很多关于使用ICollectionIDictionary捆绑的内容,并为每个项目包含一个布尔值,以便它可以保持复选框状态.但我并没有100%掌握如何在我个人的例子中使用它.我想保持解决方案非常简单,不必为了保持我的复选框状态而编写新类的页面.

这样做最干净,最恰当的方法是什么?

checkbox asp.net-mvc binding state viewmodel

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

用C#发布到Facebook粉丝页墙的最简单方法!

我为我的公司设置了粉丝页面.

我想从C#桌面应用程序自动发布对该页面墙的定期更新.

  • 哪个Facebook C#库最简单?

  • 如何轻松获取此页面的访问令牌?

  • 什么是最简洁的代码片段,只允许我发布到墙上?

我已经阅读了所有文档和数百万的stackoverflow和博客文章,这一切看起来都很复杂.当然不会那么难......

我在facebook中设置了一个"应用程序",它有自己的App ID,API Key和App Secret等.

c# api sdk facebook

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

防止ASP.Net MVC视图中的visual studio自动缩进C#代码

我在编辑HTML的视图中,例如,我可能需要在<%%>标记内部使用一行C#代码.

如果在我按下回车键或完成命令后该C#代码包含{或}这样的括号,VS会自动将该行超过2行扩展为自动缩进括号.

它真的很烦人,因为我不在代码视图中,我只是希望我的视图看起来非常干净,因此保持C#缩进的确切方式.

知道怎么禁用这个???

非常感谢..

html c# indentation visual-studio-2008

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

LINQ很多地狱 - 查询CONTAINS ALL

我有多对多的关系如下:

产品产品 ID描述

ProductFeatures ProductFeatureID ProductID FeatureID

功能特征 ID描述

任何产品都可以有许多功能.

然后我带来了一个名为"SearchFeatures"的iQueryable,它包含了我想要搜索的两个特定的Feature对象.

我想找到具有所有这些功能的产品!

像这样的东西会很好:

return db.Products.Where(x => x.Features.ContainsAll(SearchFeatures));
Run Code Online (Sandbox Code Playgroud)

使用LINQ实现此目的的最简洁方法是什么?

非常感谢.

many-to-many contains linq-to-sql

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

简单的 LINQ to SQL 扩展方法

我将如何编写一个名为“IsActive”的简单 LINQ to SQL 扩展方法,该方法将包含对几个不同字段的一些基本条件检查,以便我可以在不重复逻辑的情况下到处重用这个“IsActive”逻辑。

例如,我希望能够做这样的事情:

return db.Listings.Where(x => x.IsActive())
Run Code Online (Sandbox Code Playgroud)

IsActive 将类似于:

public bool IsActive(Listing SomeListing)
{
    if(SomeListing.Approved==true && SomeListing.Deleted==false)
        return true;
    else
        return false;
}
Run Code Online (Sandbox Code Playgroud)

否则,我将不得不在整个系统中复制一百万个不同查询中相同的旧 where 条件。

注意:方法必须在 SQL 中呈现。

extension-methods criteria linq-to-sql

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

ASP.Net MVC 3 - 使用DataAnnotations进行不显眼的客户端验证 - 字段是必需的,但不应该是

我在MVC 3中使用客户端,不引人注意的验证.我有一个名为MinPrice的字段,仅使用DisplayName和Range属性进行修饰.但它没有通过客户端验证说"MinPrice字段是必需的".我不知道为什么,我绝对没有任何地方应用的必需属性.

    [DisplayName("Asking Price")]
    [Range(0, 99999999, ErrorMessage="Invalid number")]
    public int MinPrice { get; set; }
Run Code Online (Sandbox Code Playgroud)

是什么造成的?

(注意:我可以在html源代码中看到data-val-required ="Minprice字段是必需的"属性,因此与新的不显眼的例程有关的事情就是把它放在那里).我似乎没有其他领域的这个问题..

data-annotations unobtrusive-validation asp.net-mvc-3

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

xpath innertext没有任何子节点内容

我有一些像这样的HTML(我无法改变):

<div>
    <p class="name">
        <span>Employee Name: </span>
        John Smith
    </p>
</div>
Run Code Online (Sandbox Code Playgroud)

而且我想使用xpath来提取出"John Smith"部分.

我一直在尝试使用此代码:

//div//p[@class='name']//text()
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.

实现我追求目标的最佳途径是什么?

非常感谢.

xhtml xpath

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