小编N R*_*ing的帖子

使用LINQ的IQueryable左外连接的扩展方法

我试图用返回类型实现左外连接扩展方法IQueryable.

我写的功能如下

public static IQueryable<TResult> LeftOuterJoin2<TOuter, TInner, TKey, TResult>(
        this IQueryable<TOuter> outer,
        IQueryable<TInner> inner,
        Func<TOuter, TKey> outerKeySelector,
        Func<TInner, TKey> innerKeySelector,
        Func<TOuter, TInner, TResult> resultSelector)
{
        return
          from outerItem in outer
          join innerItem in inner on outerKeySelector(outerItem) 
            equals innerKeySelector(innerItem) into joinedData
          from r in joinedData.DefaultIfEmpty()
          select resultSelector(outerItem, r);
}
Run Code Online (Sandbox Code Playgroud)

它无法生成查询.原因可能是:我用过Func<>而不是Expression<>.我也尝试过Expression<>.它给我一个在线错误outerKeySelector(outerItem),这outerKeySelector是一个被用作方法的变量

我发现了一些关于SO(比如这里)和CodeProjects的讨论,但那些适用于IEnumerable不适合的类型IQueryable.

.net c# linq

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

如果表单中不存在correspndong字段,则MVC4编辑方法将值更改为null

我的表有两列CreatedByCreateTime.在我的视图中,我没有这些字段.现在,当我使用ASP.NET MVC4 Edit(post)方法更新记录时,这些列将设置为null.但我想保留这些价值观.我知道在我的Edit(post)方法中,我可以从数据库中检索记录并手动设置它们.但我想知道我是否可以要求实体框架不要更改这些字段的值.

entity-framework asp.net-mvc-4

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

MVC4 不显眼的验证不等待远程验证完成

我的 ASP.NET MVC4 应用程序具有在模型中定义并在控制器方法中实现的远程验证规则。我的表单是动态添加到页面的。因此,我使用以下代码来触发验证。

$(tabId).on("submit", formId, function (event) {
       event.preventDefault();

       var form = $(this);

       form.removeData("validator"); 
       $.validator.unobtrusive.parse(form);

       if (form.valid())
       {
           // form submission 

           // THIS part executes even though the remote validation returns false
       }

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

它开始远程验证并且不等待完成然后提交表单。如果任何其他字段无效(例如,名称是必填字段),则会停止提交。但是,它不会等待远程验证。

我在 SO 上找到了一些解决方法,例如link1link2。但是,只有在我的页面中定义了 jQuery 验证规则时,这些才有效。但是,我使用的是 MVC4 模型验证规则。因此,我没有兴趣再次在我的视图页面中重新定义规则。

有什么解决办法吗?

validation jquery asp.net-mvc-4

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

想要在jQuery mobile首次加载时显示对话框消息

在jQuery mobile中,我想在index.html首次加载此页面时在我的主页()中显示一条对话框消息.但是,如果用户导航到我的网站的不同页面并回到我的网站index.html,我不想显示对话框.

我正在考虑使用pageshowpagebeforeshow方法和检查prevPage对象.还有其他好办法吗?

javascript jquery html5 css3 jquery-mobile

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