小编Lor*_*nzo的帖子

MVC应用程序调试出错:viewstate MAC验证失败

现在开始表单,第一次,当我开始调试我的MVC应用程序时,我收到此错误

验证视图状态MAC失败.如果此应用程序由Web场或群集托管,请确保配置指定相同的validationKey和验证算法.AutoGenerate不能在群集中使用.

完整堆栈跟踪

[ViewStateException: Invalid viewstate. 
    Client IP: 127.0.0.1
    Port: 
    Referer: 
    Path: /Login/LogOn
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.41 Safari/534.7
    ViewState: Fvq7WNUu+qCC00VbTIOTUuBvK4YHjxp3RubwsrFYW93hKlF7I4GLzaNHceRqjjJB0GwvRPWwlwE6brhAZAo+Mp191B/C+l8Dw/w7aQBDCpWGC3ox6hkSeZp10vbjm9eJFQZmGSPyC1rKYwApBBaz0Q==]

[HttpException (0x80004005): Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.]
   System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError) +198
   System.Web.UI.ViewStateException.ThrowMacValidationError(Exception inner, String persistedState) +14
   System.Web.UI.ObjectStateFormatter.Deserialize(String …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-mvc-2

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

jqGrid:使用多种方法过滤数据

我的要求是显示一个包含多个过滤器的页面以应用于网格数据.

假设我们正在谈论订单,订单具有以下属性

public class Order {
    public int OrderID
    public DateTime OrderDate
    public DateTime ShipmentDate
    public int OrderTotal
    public int OrderStatus
}
Run Code Online (Sandbox Code Playgroud)

在jqgrid对象中,我显示除OrderStatus之外的所有属性

要求是创建一个具有的视图

  • 左边的jqGrid
  • 右边的一个小组

在右侧面板中,用户将看到一个复选框列表,表示每个可能的OrderStatus值,并且他希望使用这两种方法进行搜索(例如,选中"已发货订单"复选框,然后使用大于某个值的金额过滤网格)

我已经multiplesearch:true在jqGrid对象中配置了高级过滤(),我可以创建组合字段和逻辑运算符的复杂过滤器.

有关如何在用户按下搜索按钮时从右侧面板提交数据的任何想法?

更新1:

序言:Oleg样品太棒了但不幸的是不符合我的客户要求:(

@Oleg:我不明白你为什么这么想:

如果数据位于网格之外,您将仅在选定行的右窗格中显示订单详细信息.因此,用户将不太了解数据.

也许我的描述不是那么清楚,但我不会显示任何订单细节.为了更好地阐明我的要求,我修改了您的示例,以显示所需的最终用户界面,如下图所示: UI就像客户想要的那样

客户希望使用两种方法或两者同时过滤网格中的数据:

  • 使用multiplesearch网格本身提供的设施(感谢提到的解决方法)
  • 使用自定义搜索面板(右侧带有复选框的面板)

从功能的角度来看,需求很容易表达:当用户单击复选框或使用本机进行搜索时,multiplesearch我应该将值发布到服务器,包括复选框状态.

总结一下,我应该:

  • 通过本机发布帖子时添加复选框状态 multiplesearch
  • multiplesearch当用户单击复选框时添加当前状态(如果有)

有没有办法做到这一点?

asp.net asp.net-mvc search jqgrid jqgrid-asp.net

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

您如何描述您的网站/ Web应用程序?

这是从社区已经完成有关分析Web应用程序方面的信息的经验中收集的.

几年前,我使用CORBA ORB在C++/Java的一个非常大的项目中工作,我们使用Rational Purify/CodeCoverage来检测,检测内存泄漏并发现服务器代码的瓶颈.从那时起,我没有任何使用.NET平台上的工具的经验,无论是使用纯c#还是使用Web应用程序

  • 你用工具吗?
  • 您是否估计流量并对所需的预期带宽进行计算?
  • 您是否描述了不同的服务器代码和网页呈现?
  • 你使用什么代码覆盖工具?

我知道这是一个非常大的话题.我所掌握的一些信息来自" Java Web站点的性能分析 "一书,该书是针对该平台的Java平台和参考工具,但它是一种可转移的方法,因此核心思想通常适用.

.net asp.net profiling

9
推荐指数
1
解决办法
316
查看次数

更改SQL数据库的名称

重命名数据库的正确步骤是什么?

示例:我有一个可以使用SQL Server Management Studio访问的数据库,其名称类似于"MyDatabase".这个数据库的物理文件是

  • MyDatabase.mdf
  • MyDatabase_log.ldf

如何将这些逻辑和物理名称重命名为"MyNewDatabase"?

谢谢你的帮助

sql-server-2008

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

按相关实体搜索

您好我正在使用MVC 5Entity Framework 6我的项目.我有一个如下图所示的模型:

图

我需要从一组Tag对象开始查询实体产品.请注意,Tagobject是一个抽象类,实际上是使用Table-Per-Entity策略继承映射的.

这是我的函数方法的签名

public IEnumerable<Product> SerachByTag( IEnumerable<Tag> tagList );
Run Code Online (Sandbox Code Playgroud)

在tagList参数中实际上会有具体的Tag实现实例.

我该如何进行此查询?

例如,我可以在输入中接收以下数据结构

[
    { tagType: 1, stringProperty: "abc" },
    { tagType: 2, intProperty: 9 }
]
Run Code Online (Sandbox Code Playgroud)

等等.哪种过滤产品更好?例如,我当然可以首先为每个标准应用产品列表,然后将这些结果交叉,如下例所示:

var p1 = ctx.Tags
            .OfType<FirstTagType>()
            .Where( x => x.StringProperty.Equals("abc") )
            .Select( x => x.Products );
var p2 = ctx.Tags
            .OfType<SecondTagType>()
            .Where( x => x.IntProperty == 9 )
            .Select( x => x.Products );
var results = p1.Intersect( p2 ); …
Run Code Online (Sandbox Code Playgroud)

c# linq-to-entities entity-framework asp.net-mvc-5

9
推荐指数
1
解决办法
160
查看次数

获取Uploadify以使用asp.net-mvc

我试图让Uploadify与我的网站一起工作,但是我甚至在文件发送到服务器之前就得到了一个通用的"HTTP错误"(我说这是因为Fiddler没有向我的控制器显示任何发布请求.

我可以正确浏览要上传的文件.队列正确填充了要上载的文件,但是当我点击提交按钮时,队列中的元素变为红色并说出HTTP错误.

无论如何这是我的部分代码:

<% using ( Html.BeginForm( "Upload", "Document", FormMethod.Post, new { enctype = "multipart/form-data" } ) ) { %>
<link type="text/css" rel="Stylesheet" media="screen" href="/_assets/css/uploadify/uploadify.css" />
<script type="text/javascript" src="/_assets/js/uploadify/swfobject.js"></script>
<script type="text/javascript" src="/_assets/js/uploadify/jquery.uploadify.v2.1.0.min.js"></script>
<script type="text/javascript">
    $(document).ready(function() {

        $("[ID$=uploadTabs]").tabs();

        var auth = "<% = Request.Cookies[FormsAuthentication.FormsCookieName]==null ? string.Empty : Request.Cookies[FormsAuthentication.FormsCookieName].Value %>";
        $('#fileInput').uploadify({
            uploader: '/_assets/swf/uploadify.swf',
            script: '/Document/Upload',
            folder: '/_uploads',
            cancelImg: '/_assets/images/cancel.png',
            auto: false,
            multi: false,
            scriptData: { token: auth },
            fileDesc: 'Any document type',
            fileExt: '*.doc;*.docx;*.xls;*.xlsx;*.pdf',
            sizeLimit: 5000000,
            scriptAccess: 'always', //testing locally. comment before …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc file-upload uploadify

8
推荐指数
1
解决办法
7308
查看次数

RESEED数据库上的标识列

我可以用吗?

DBCC CHECKIDENT(<table_name>, RESEED, value)
Run Code Online (Sandbox Code Playgroud)

命令将标识列当前值重置为SQL Server 2008中的原始值?

如果是的话,这是正确的做法,没有任何缺点吗?如果没有,是否有另一种方法可以做到这一点?

sql-server identity-column sql-server-2008

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

转换字典以供javascript使用

我有一个控制器动作,通过使用ViewBag将Dictionary传递给视图.

public async Task<ActionResult> MyAction() {
    Dictionary<ATypeViewModel, IEnumerable<BTypeViewModel>> all = await GetDictionary();
    ViewBag.MyData = all;
    return View();
}
Run Code Online (Sandbox Code Playgroud)

在视图内部,我需要使用此字典来创建级联单选按钮列表.第一个列表将包含键值

@{
    Dictionary<ATypeViewModel, IEnumerable<BTypeViewModel>> services = ViewBag.MyData;
}

@foreach ( KeyValuePair<ATypeViewModel, IEnumerable<BTypeViewModel>> entry in services ) {
    <div class="radio">
        <label for="aType"><input type="radio" name="aType" value="@entry.Key.ATypeID" />&nbsp;&nbsp;@entry.Key.Description</label>
    </div>
}
Run Code Online (Sandbox Code Playgroud)

我需要jQuery来创建这个代码但不幸的是我不知道如何转换javascript使用的字典.

编辑:

hutchonoid回答后,我使用Json.NET将我的字典序列化为json.

Dictionary<ATypeViewModel, IEnumerable<BTypeViewModel>> list = new Dictionary<ATypeViewModel, IEnumerable<ATypeViewModel>>();
[...]
return await JsonConvert.SerializeObjectAsync( list );
Run Code Online (Sandbox Code Playgroud)

然后在我的javascript代码中添加它

var collection = @Html.Raw( Json.Encode(services) );
Run Code Online (Sandbox Code Playgroud)

遗憾的是,序列化字符串不正确,因为它是以下形式

var collection = {
    ATypeViewModel: [
        { BTypeID: 11, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc dictionary razor

8
推荐指数
1
解决办法
9373
查看次数

Polly超时政策说明

我正在尝试使timout政策正常运行。集成api时,我有以下要求。

  1. 创建一个http请求以调用Endpoint1并传递transactionID并捕获结果
  2. 如果http请求在20秒内未答复,则发送具有相同transactionID的取消请求并捕获结果

对于此任务,我想使用Polly,在我看来这是一个很棒的组件,可帮助处理瞬态故障。但是,由于我对这项技术还很陌生,所以我只想确定自己是否正确实施。

首先,我像这样用Polly创建了一个超时策略

var timeoutPolicy =
    Policy.TimeoutAsync(
        TimeSpan.FromSeconds( 20 ),
        TimeoutStrategy.Optimistic,
        async ( context, timespan, task ) => {
            //write here the cancel request 
        } );
Run Code Online (Sandbox Code Playgroud)

然后,我准备执行该策略

var policyResult = await timeoutPolicy.ExecuteAndCaptureAsync( async () => {
    //make here the request 1
} );
Run Code Online (Sandbox Code Playgroud)

我从文档中得到的是,如果在timeoutPolicy.ExecuteAndCaptureAsync委托内部发生了超时,则Polly会自动调用onTimeout委托。对?

但是我的问题是:

  • 如果在执行委托内部发生异常会怎样?我应该把该波利结构包装在一个尝试中吗?
  • 当我分析策略结果时,如何理解超时是否发生?

c# polly transient-failure

8
推荐指数
1
解决办法
3861
查看次数

无法加载文件或程序集"System.Web.Mvc"或其依赖项之一

我有这个新的MVC应用程序,我已经安装在Windows 2008 Server上.并在运行localhost时收到以下消息.

我已经检查了Bin文件夹,并且可以确认Systems.Web.MVC在那里.该文件的版本是2.0.50217.0

在web.config中我定义了这个程序集,

任何人都可以帮忙吗?请参阅以下错误消息:

- - 错误信息 - - - - - - - - - - - - - - -

Server Error in '/' Application.
--------------------------------------------------------------------------------

Could not load file or assembly 'System.Web.Mvc' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-2

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