小编Tal*_*l l的帖子

在使用Union表达式之前,我应该如何初始化IQueryable变量?

我已经在IQueryable类型上创建了一个扩展方法,它接受一些实体并根据一些标准对它们进行过滤.我的问题是我不能返回由变量组成的Union表达式,而不是先将所有变量初始化.作为aprears的空值无效.

public static IQueryable<Person> FilterHairColors(this IQueryable<Person> subQuery, string[] hairColors)
    {
        IQueryable<Person> q1 = null;
        IQueryable<Person> q2 = null;
        IQueryable<Person> q3 = null;
        IQueryable<Person> q4 = null;

        foreach (var value in hairColors)
        {
            switch (value)
            {
                case "1":
                    q1 = subQuery.Where(p => p.HairColor_bright == true);
                    break;
                case "2":
                    q2 = subQuery.Where(p => p.HairColor_brown == true);
                    break;
                case "3":
                    q3 = subQuery.Where(p => p.HairColor_dark == true);
                    break;
                case "4":
                    q4 = subQuery.Where(p => p.HairColor_red == true);
                    break;
            }
        }
        return q1.AsQueryable().Union(q2.AsQueryable()).Union(q3.AsQueryable()).Union(q4.AsQueryable());
    } …
Run Code Online (Sandbox Code Playgroud)

c# linq iqueryable

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

如何将另一个参数从jquery ajax传递给mvc控制器,以及form.serialize()

我使用一个名为jscroller的jQuery插件,它使用jquery.ajax进行ajax调用.我需要从搜索表单传递所有参数,并将它们传递给mvc控制器,我认为最好的方法是在'data'字段中输入以下expr':

$('#formId').serialize();
Run Code Online (Sandbox Code Playgroud)

我的问题是,我需要传递一个"页面"值以及表单值,该值随每次调用而改变.

如何将页面值与"数据"字段中的"序列化"表达式一起放置,还是有另一种更有效的方法呢?

model-view-controller jquery defaultmodelbinder

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

jquery事件preventDefault()不起作用

我使用MVC并希望通过jquery提交表单,但是对于mvc内置验证在任何无效输入的情况下工作,我已经调整了click事件的"return false"(也试过"event.preventDefault") "),如果从控制器获得"成功"json返回.

这是代码:

$(document).ready(function () {
    var request;
    $('#formSubmit').click(function (event) {
        request = $.ajax({
            url: '/personManager/loadDetails/',
            type: 'post',
            data: $('form').serialize()
        });
        request.done(function(data){
            if(data=="success")
                event.preventDefault();
            });

        });
    });
Run Code Online (Sandbox Code Playgroud)

我不能让它发挥作用......我做错了什么?还有,有没有更有效的方法来保持mvc验证机制,同时使用jquery?

更新:如果我试图更简单地描述我的愿望:我想要调整click事件的preventDefault,所以在某种情况下它将调用表单submit,而在其他情况下,它将不会,并且只有$ .ajax工作.在我在服务器端确认没有发生任何动作之后,第二个是有效的.必须有办法,我猜...

asp.net-mvc jquery preventdefault

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