因此,我最近将Visual Studio 2012更新为更新2.请注意,下次我发布我的应用程序时(在这种情况下通过文件发布)我注意到有三个新选项:
第一个和第三个选项非常明显,但我找不到第二个选项的任何文档,因为它适用于MVC.当我检查它时,网站上生成的文件似乎没有任何变化,我没有看到任何真正的性能变化.
我一直在使用MVC4 Internet模板编写Web应用程序.我真的不需要任何复杂的用户管理,所以我选择了默认的SimpleMembershipProvider.我正在初始化App_Start中的成员资格,我有角色和用户设置和工作.我没有使用SSO或任何其他OAuth功能.现在我有一个忘记密码的测试人员,在谷歌搜索一整天后,我发现我不知道如何重置密码或更改密码!
我已阅读文档,发现如果使用SimpleMembership则不支持 ResetPassword功能.我的问题是,我怎么做:
我发现web.config设置(理论上)将成员资格提供程序设置为使用SimpleMembership,但我不确定如何指定要使用的表(假设这是正确的方法).
web.config部分:
<roleManager enabled="true" defaultProvider="SimpleRoleProvider">
<providers>
<clear/>
<add name="SimpleRoleProvider" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/>
</providers>
</roleManager>
<membership defaultProvider="SimpleMembershipProvider">
<providers>
<clear/>
<add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" />
</providers>
</membership>
Run Code Online (Sandbox Code Playgroud)
以及我认为我需要在web.config中拥有的当前InitializeDatabaseConnection:
WebSecurity.InitializeDatabaseConnection("UPEFSSecurity", "Datamart_User", "UserId", "UserName", autoCreateTables: true);
Run Code Online (Sandbox Code Playgroud) 我正在研究一个需要使用ReportViewer从SSRS呈现远程报告的MVC4应用程序.在这个论坛的帮助下,我设法让页面在MVC下呈现,但回调不起作用(加载初始页面).导出报告工作正常(并提供所有页面).当我检查页面时,我注意到更改页面后出现以下错误:
未捕获的Sys.WebForms.PageRequestManagerParserErrorException:Sys.WebForms.PageRequestManagerParserErrorException:无法解析从服务器收到的消息.
我发现这篇关于组合MVC和Web窗体的文章,但由于没有更多的主布局页面,它看起来已经过时了.这与如何在asp.net mvc 3 razor视图中使用reportviewer控件有关但不重复?因为那篇文章仅适用于本地报道.我已经尝试将AsyncRendering更改为true和false.如果为true,则根本不加载.任何建议将不胜感激.
我一直在使用MVC4和EF5.x编写应用程序,并使用ELMAH记录异常以供审阅.我们最近发布了该应用程序,正如预期的那样,ELMAH日志填满了几十个例外.很棒(而不是)!问题是其中一个例外是
System.Data.Entity.Validation.DbEntityValidationException
Validation failed for one or more entities.
See 'EntityValidationErrors' property for more details.
Run Code Online (Sandbox Code Playgroud)
当然,没有办法查看EntityValidationErrors属性以获取更多详细信息,并且堆栈跟踪包装到我的SubmitChanges()
我知道ELMAH有能力允许我们提出自己的异常,并以某种方式定制记录的内容和方式.不幸的是,我对ELMAH和MVC仍然很陌生,谷歌搜索没有发现任何相关内容.我确实找到了一篇关于记录EntityValidationErrors 的博客文章,作者特别提到他将在ELMAH中发布如何这样做,但是发布于2012年9月,从那时起我就没有看到任何内容.
任何帮助将不胜感激!
随着SSDT 2016(GA)的发布,我加载了SQL Server 2016 GA Developer Edition,新的SSMS 2016独立版本,甚至Visual Studio 2015 Update 2(专业版)和Visual Studio仍然会在我尝试的任何时候崩溃使用SSIS模板(包括导入向导)打开SSIS包或创建新解决方案.我重新安装了使用建议的订单(SQL Server 2016,SSMS,SSDT)以及Visual Studio 2015,然后是SSDT.两者都导致同样的崩溃.我能够创建和打开所有其他解决方案类型(SSRS,SSAS,SQLCLR),因此它似乎是SSIS特有的问题.可以在此处找到Connect错误报告(连同附件和MSFT要求的所有内容):https://connect.microsoft.com/SQLServer/feedback/details/2781125/ssis-projects-crash-visual-studio
Visual Studio中的错误如下:
Problem signature:
Problem Event Name: APPCRASH
Application Name: devenv.exe
Application Version: 14.0.25420.1
Application Timestamp: 57685d85
Fault Module Name: KERNELBASE.dll
Fault Module Version: 6.3.9600.18340
Fault Module Timestamp: 5736541b
Exception Code: c06d007e
Exception Offset: 00014878
OS Version: 6.3.9600.2.0.0.272.7
Locale ID: 1033
Additional Information 1: d3a5
Additional Information 2: d3a5b2a34c74c92cf7c3ff2061a46015
Additional Information 3: 86f5
Additional Information 4: 86f5db7ad561caf63ca32f7aba7c4416
Run Code Online (Sandbox Code Playgroud) 我正在研究MVC4和Entity Framework 5中的应用程序,最近在执行查询时遇到了这个异常.
{"LINQ to Entities无法识别方法'System.String PadLeft(Int32,Char)'方法,并且此方法无法转换为商店表达式."}
当我在过去遇到过类似的错误时,我只是在查询之外创建了一个变量,然后在LINQ语句中使用了该变量.不幸的是,在这种情况下,我正在操纵行结果,所以我不确定如何去做或如果这是最好的方法.任何帮助,将不胜感激.我的查询如下:
IQueryable<System.String> LEAPrograms = db.Datamart_Draft
.Where(where => where.snapshot_id == snapshot_id
&& !String.IsNullOrEmpty(where.entity_program))
.Select(sel => (sel.entity_program.PadLeft(PROGRAMLENGTH, '0'))).Distinct();
Run Code Online (Sandbox Code Playgroud) 我还在尝试处理新的async/await运算符.我有几个异步方法返回Task>我打算用它来捕获结果集的问题 - 主要目的是多个检查可以同时发生.
事实上,当我等待Task.WhenAll()时,我得到一个List [],我必须通过它来获得我想要的东西.我认为必须有一个更好的方法来做到这一点 - 任何帮助将不胜感激!
这是我的测试代码(我使用Linqpad作为测试床):结果是List [],而ErrorList是我想要的样子.再次感谢!
async Task Main()
{
var results = await Task.WhenAll (FirstCheck(), SecondCheck());
var ErrorList = new List<string>();
foreach (var d in results)
{
foreach (var i in d)
{
ErrorList.Add(string.Format("error: {0}",i));
}
}
results.Dump();
ErrorList.Dump();
}
async Task<List<string>> FirstCheck()
{
List<string> Errors = new List<string>{"a","b","c"};
return Errors;
}
async Task<List<string>> SecondCheck()
{
List<string> Errors = new List<string>{"a","b","c"};
return Errors;
}
Run Code Online (Sandbox Code Playgroud)