小编Par*_*osh的帖子

找到了自动映射器未映射的成员

我们正在使用Automapper进行项目,并且似乎随机获得以下错误:

AutoMapper.AutoMapperConfigurationException:找到未映射的成员.查看下面的类型和成员.添加自定义映射表达式,忽略,添加自定义解析程序或修改源/目标类型

代码在几个月内没有改变.我收到错误,刷新,错误消失,页面工作正常.我正在使用

Mapper.AssertConfigurationIsValid();
Run Code Online (Sandbox Code Playgroud)

不知道为什么它抱怨映射不好然后刷新再次没问题,有没有人碰到这个?调试没有帮助,因为它是随机的,有时没有错误,然后其他日子它将在网站的某个地方弹出,回到它并且没关系.错误也出现在随机页面上,而不是相同的页面,而不是相同的映射.

c# asp.net automapper

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

mvc大写模型vs小写模型

我正在开发一个MVC 5项目,对MVC来说很新.我在代码中注意到这一行:

@Html.DropDownListFor(model => model.ContractorId, Model.Contractors)
Run Code Online (Sandbox Code Playgroud)

页面顶部的指令是:

@model Project.Models.ContractViewModel
Run Code Online (Sandbox Code Playgroud)

ContractViewModel类中有一个Contractors对象.

public IEnumerable<SelectListItem> Contractors
Run Code Online (Sandbox Code Playgroud)

我对资本M(Model.Contractors)有点困惑,Model总是引用@model中传递的对象吗?那么使用Model.Contractors和model.Contractors有什么区别?

asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

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

requestValidationMode 4.5 vs 2.0

requestValidationMode ="4.5"和requestValidationMode ="2.0"之间有区别吗?我有一个.net 4.5应用程序,有一个我不想验证的控件,因为用户可以输入html标签:

<asp:TextBox ID="txtTitle" runat="server" ValidateRequestMode="Disabled" />
Run Code Online (Sandbox Code Playgroud)

在我的web.config我有:

<compilation debug="true" strict="false" explicit="true" targetFramework="4.5">...</compilation> 
<httpRuntime targetFramework="4.5" requestValidationMode="2.0"  />
Run Code Online (Sandbox Code Playgroud)

最初我已经把requestValidationMode ="4.5",但是这不起作用,我仍然会得到关于标签的错误 - "从客户端检测到一个有潜在危险的Request.Form值...",一旦提交表单.但是,如果我将它设置为requestValidationMode ="2.0"它可以工作,我可以点击PageLoad并对该字段中的值进行编码.

asp.net asp.net-4.5

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

工作单元设计模式 - 没有实体框架的例子?

我正在尝试学习工作单元和存储库模式,并希望同时进行一些示例.但是,无论我在网上找到什么,总是使用实体框架.

如果不是特定于实体框架,工作单元和存储库模式会是什么样子?有些难以辨别哪些方面是模式的一部分以及与EF集成的副作用是什么.

c# asp.net design-patterns

17
推荐指数
0
解决办法
4212
查看次数

将Html导入Adobe Indesign

我们目前正在研究报纸的pdf版本,我们有一个.net网站,它捕获要发布的文章,存储输入为html的内容,因此我们可以保持粗体,下划线,删除等样式.

一旦将其存储在数据库中,我们计划使用Indesign创建pdf.我们目前已经构建了一个模板,但是当我们生成一个xml文档并导入Indesign时,html标签就被写出来了.有没有办法绕过这个,让Indesign维护标签,就像它们在html中一样?我们只需要一些简单的,如粗体,三角形,下部,中心对齐.

谢谢.

html import adobe-indesign

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

Linq Dynamic ParseLambda没有解决

我正在尝试使用我在这里找到的示例代码来处理我正在处理的事情: 如何将String转换为其等效的LINQ表达式树?

在解决方案中,作者使用以下内容:

var e = DynamicExpression.ParseLambda(new[] { p }, null, exp);
Run Code Online (Sandbox Code Playgroud)

但是,每当我尝试使用它时,它都无法解决.我收到一个错误:

System.Linq.Expressions.DynamicExpression'不包含'ParseLambda'的定义

我在项目中安装了System Linq Dynamic nuget包,我还添加了一个using语句:

using System.Linq.Dynamic;
Run Code Online (Sandbox Code Playgroud)

然而,这看起来是灰色的所以我猜它没有发现我所指的DynamicExpression对象来自那里,而是从System.Linq.Expression中取而代之.有没有办法来解决这个问题?我试过去做

System.Linq.Dynamic.ParseLambda(new[] { p }, null, tagCondition);
Run Code Online (Sandbox Code Playgroud)

但仍然没有好,相同的错误和使用声明仍然是灰色的.

c# linq asp.net

8
推荐指数
2
解决办法
8529
查看次数

如何拒绝恶意请求

我最近接手了一个应用程序,我们最近做了一个appscan,我得到了一个标记为易受攻击的项目.报告建议的补救任务是拒绝恶意请求.报告称apps可以尝试:

对原始请求应用了以下更改:将HTTP标头设置为" http://bogus.referer.ibm.com "

我在第一次运行appscan时标记了这一点,然后输入代码来检查是否提供了urlreferer,如果是,则确保它与url中的主机相同,否则终止用户的会话并重定向到登录页面.我们再次运行appscan,它再次被标记,我不知道如何处理这个问题.

当我查看报告时,它显示它被放入伪造的引用者,服务器响应302状态,重定向,然后一个请求被输入登录服务器响应202,给予它.Appscan推理说:

在不同的会话中发送了两次相同的请求,并收到了相同的响应.这表明没有任何参数是动态的(会话标识符仅在cookie中发送),因此应用程序容易受到此问题的影响.

但是响应总是不一样吗?如果检查失败302后跟202,则无论用户如何,都会出现重定向和登录页面.有谁知道如何处理这个?我猜我可以将用户的会话ID放入重定向网址,这样appscan就会看到它是否不同,但我认为必须有另一种方式.

这是一个.net 4应用程序.使用Session对象跟踪用户,如果重要,则不使用表单身份验证.

c# asp.net

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

表单身份验证保护什么,而不是使用会话变量

我正在开发一个应用程序,它使用Session变量来跟踪用户,检查母版页是否存在,否则将它们敲出来登录.我想将其更改为表单身份验证,因为我认为它更安全,数据已加密.

有人能告诉我实际加密了哪些数据?我尝试在我的网站上设置表单身份验证,它工作正常,用户正在被正确跟踪,无法登录而无法访问页面.但是,当我查看请求正文,使用Fiddler时,我看到所有表单字段和那里内容.黑客是否可以使用它来更改数据并重新提交请求,就像使用从Session变量生成的cookie一样?这个应用程序没有使用SSL,所以我理解SSL会加密正文,但我认为这也是表单身份验证的功能.否则它加密什么,只是cookie中的会话ID?

这是我使用的代码:

    <authentication mode="Forms">
  <forms loginUrl="default.aspx" name=".ASPXFORMSAUTH_Test" defaultUrl="home.aspx" protection="All"/>
</authentication>
<authorization>
  <deny users="?"/>
</authorization>
Run Code Online (Sandbox Code Playgroud)

在登录页面中,我尝试手动创建cookie:

                    FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
                    txtEmail.Text,
                    DateTime.Now,
                    DateTime.Now.AddMinutes(30),
                    false,
                    txtEmail.Text,
                    FormsAuthentication.FormsCookiePath);

                // Encrypt the ticket.
                string encTicket = FormsAuthentication.Encrypt(ticket);

                // Create the cookie.
                Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));

                // Redirect back to original URL.
                Response.Redirect(FormsAuthentication.GetRedirectUrl(txtEmail.Text, false));
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

FormsAuthentication.RedirectFromLoginPage(txtEmail.Text, false);
Run Code Online (Sandbox Code Playgroud)

预告片得到相同的结果,请求Fiddler的主体显示所有提交的字段及其内容.

asp.net

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

捆绑css工作但字体没有加载

我的MVC站点中有以下文件夹结构:

- 内容 - 笔记本 - CSS

- 内容 - 笔记本 - 字体

内容直接位于网站的根目录下.在我的css文件夹中,我有一个具有相对路径的文件

URL(" ../字体/ fontawesome-webfont.woff?V = 4.0.3' )

我的包目前看起来像:

bundles.Add(new StyleBundle("~/bundles/Content/Notebook/css").Include(
        "~/Content/Notebook/css/animate.css",
        "~/Content/Notebook/css/font.css",
        "~/Content/Notebook/css/font-awesome.min.css",
        "~/Content/Notebook/css/app.css"
));
Run Code Online (Sandbox Code Playgroud)

这是使用

@Styles.Render("~/bundles/Content/Notebook/css")
Run Code Online (Sandbox Code Playgroud)

这适用于css文件,但字体文件没有加载,我看到它在这里寻找它 http://localhost/MySite/bundles/Content/fonts/fontawesome-webfont.woff?v=4.0.3

我看到了,然后尝试将我的包名改为

〜/内容/笔记本/ CSS

如果我从名称中删除"捆绑",那么认为这也会获得相对的工作路径,但这样做会导致css文件无法加载.为什么不加载css文件?如果我将"捆绑"这个词带回了它再次起作用的名称.还有任何想法如何让字体与捆绑一起加载?

asp.net asp.net-mvc-4

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

mvc部署需要哪些文件?

我一直在使用webforms,最近开始使用mvc.使用webforms,当我们使用推送到qa/prod服务器时,我们总是复制文件.留下.cs文件,所以只有.aspx,bin文件夹,以及相关的js/css文件.

使用mvc,如果我们从我们的pc(我们开发的地方)复制目录,需要哪些文件,我们是否需要.cshtml文件?我只是想避免在不需要时推送所有文件.

asp.net asp.net-mvc asp.net-mvc-5

5
推荐指数
2
解决办法
2576
查看次数