小编iur*_*ona的帖子

使用jquery.validate.unobtrusive验证后调用脚本

我使用ASP.NET MVC 3与unobstrusive验证JavaScript.我也在使用jquery ui标签,我想选择一个包含无效消息元素的标签.

因此,为此,我需要在评估jquery.validate之后调用脚本.

我试过这样的:

$(':submit').submit(function () {
    var invalidField = $(".input-validation-error");
    if (invalidField ) {
        tabid = //some script to detect wich tab contains the invalidField
        $('#someTabed').tabs('select', tabid));
    }
});
Run Code Online (Sandbox Code Playgroud)

它工作正常,但我点击提交按钮TWICE.这意味着在我想要的事件之后不会调用此方法.

所以我需要知道如何拦截由不引人注意的验证所做的验证方法,然后在我之后使用我的方法.

jquery unobtrusive-validation asp.net-mvc-3

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

如何使实体框架将扩展方法包含在Generic IQueryable <TSource>中

这就是事情.

我有一个接口,我想把Include属于EntityFramework库的扩展方法放到我的IRepository层,不需要知道EntityFramework.

public interface IRepository<TEntity>
{
    IQueryable<TEntity> Entities { get; }

    TEntity GetById(long id);
    TEntity Insert(TEntity entity);
    void Update(TEntity entity);
    void Delete(TEntity entity);
    void Delete(long id);
}
Run Code Online (Sandbox Code Playgroud)

所以我有扩展方法:

public static class IncludeExtension 
{
    static IQueryable<TEntity> Include<TEntity>(this IQueryable<TEntity> query, 
        string path)
    {
        throw new NotImplementedException();
    }
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在这一层实现它,我想把它发送到我的EntityFramework(或任何将实现IRepository的人)来处理.

我需要一个带扩展方法的接口.

有光吗?

methods entity-framework code-first

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

ASP.NET MVC 3一对多表单

我有使用Entity Framework Code First映射的这些类:

public class Person
{
    public int PersonId { get; set; }
    public string Name { get; set; }
    //... additional properties
    [Required]
    public virtual ICollection<Address> Addresses { get; set; }
}
public class Address
{
    public int AddressId { get; set; }
    public string Street { get; set; }
    //... additional properties

    public int PersonId { get; set; }
    public virtual Person Person { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

因此,使用ASP.NET MVC 3,如何在一个表单中执行人员编辑视图以填充地址中的所有人员属性?

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset> …
Run Code Online (Sandbox Code Playgroud)

one-to-many ef-code-first entity-framework-4.1 asp.net-mvc-3

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

ASP.NET MVC可配置验证

我想使用来自可配置源的asp.net mvc客户端/服务器验证.

有些像.config文件,我可以放置信息:Type,Member,ValidationType

<validations>
    <add type="Customer" member="Name" validator="Required" />
    <add type="Customer" member="Age" validator="Range" mimimum="18" maximum="100" />
</validations>
Run Code Online (Sandbox Code Playgroud)

通过此计划,可以启用/禁用验证.

任何的想法?

validation asp.net-mvc config

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

评估lambda表达式

我上课了

public class Person
{
    public int PersonId { get; set; }
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个Person类型的lambda表达式

Expression<Func<TModel, TProperty>> expression
Run Code Online (Sandbox Code Playgroud)

谁包含此值

{model => model.Name}
Run Code Online (Sandbox Code Playgroud)

如何针对Person实例计算lambda表达式,以提取Name值属性?

linq lambda

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

Angular 2导入Observable的共享运算符

我试图使用shared观察者的运算符,但它不起作用:

我的代码:

import { Injectable } from '@angular/core';
import { Observer } from 'rxjs/observer';
import { Observable } from 'rxjs/observable';
import 'rxjs/add/operator/share';

@Injectable()
export class LoadingService {
    private _observer: Observer<string>;
    loading$: Observable<string>;
    constructor() {
        this.loading$ = new Observable<string>(
            observer => this._observer = observer).share();
    }

    toggleLoadingIndicator(name) {
        if (this._observer) {
            this._observer.next(name);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我调用时,.share();我得到错误:TypeError :(中间值).share不是函数.

在其他情况下,我成功导入例如地图运算符,并正常使用如下:

import 'rxjs/add/operator/map';
this._http.get(this._url, {
    headers: this._headers
}).map(r => r.json()).subscribe(json => {
    console.log(json);
    this.isValid = true;
});
Run Code Online (Sandbox Code Playgroud)

因此,即使我尝试使用map运算符来证明导入,在第一种情况下this.loading$ …

import observable rxjs angular

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