小编wil*_*ill的帖子

复杂类型在ApiController参数中变为null

我不知道为什么我的参数"ParametroFiltro Filtro"变为空,其他参数"page"和"pageSize"正常.

public class ParametroFiltro
{
    public string Codigo { get; set; }
    public string Descricao { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的ApiController获取方法:

public PagedDataModel<ParametroDTO> Get(ParametroFiltro Filtro, int page, int pageSize)
Run Code Online (Sandbox Code Playgroud)

我的ajax电话:

var fullUrl = "/api/" + self.Api;
$.ajax({
    url: fullUrl,
    type: 'GET',
    dataType: 'json',
    data: { Filtro: { Codigo: '_1', Descricao: 'TESTE' }, page: 1, pageSize: 10 },
    success: function (result) {
        alert(result.Data.length);
        self.Parametros(result.Data);
    }
});
Run Code Online (Sandbox Code Playgroud)

c# ajax json asp.net-web-api

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

等号(=)和IN与子查询之间的差异

我有一个查询需要20秒执行,请按照我的查询:

SELECT MATLIGA.COD_MAT_FAMILIA 
FROM 
    ORCAMENTOS.dbo.OR_1INSUMOS INSUMOS
    INNER JOIN ORCAMENTOS.dbo.OR_MAT_GRUPOS GRUPOS ON (GRUPOS.EMPRESA='01' AND GRUPOS.FILIAL='01' AND GRUPOS.CODIGO_INTERNO = 'HOT' )
    INNER JOIN ORCAMENTOS.dbo.OR_MATERIAIS MATER ON (MATER.EMPRESA='01' AND MATER.FILIAL='01' AND MATER.CODIGO_GRUPO=GRUPOS.ID AND MATER.ID = INSUMOS.COD_INSUMO_MATER )
    INNER JOIN ORCAMENTOS.dbo.OR_MAT_LIGACAO MATLIGA ON (MATLIGA.EMPRESA='01' AND MATLIGA.FILIAL='01' AND MATLIGA.CODIGO_MATERIAL  = INSUMOS.COD_INSUMO_MATER)
WHERE INSUMOS.EMPRESA='01' AND INSUMOS.FILIAL='01' 
AND INSUMOS.COD_INSUMO_MATER IS NOT NULL 
AND INSUMOS.NUMERO=10865812 
AND INSUMOS.OPCAO_SIMULACAO=1 
AND INSUMOS.CODIGO_MAQUINA = (SELECT COD_MAQ_PROPOSTA FROM ORCAMENTOS.dbo.OR_1SIMULACOES AS ORC WHERE  ORC.NUMERO=10865812 AND ORC.OPCAO_SIMULACAO = 1 AND ORC.EMPRESA='01' AND ORC.FILIAL='01' )  
AND …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2012

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

Url.RouteUrl返回空

我试图获得完整的URL但是RouteUrl返回空.

在视图中,我这样称呼:

alert('@Url.RouteUrl("Api", new { controller = "Parametros", id = "" })');
Run Code Online (Sandbox Code Playgroud)

这是我的路线配置:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapHttpRoute(
        name: "Api",
        routeTemplate: "api/{controller}/{id}",
        defaults: new { id = RouteParameter.Optional }
    );

    routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Usuario",
            action = "Login", id = UrlParameter.Optional }
    );
}
Run Code Online (Sandbox Code Playgroud)

和我的控制器:

public class ParametrosController : ApiController
{
    ISistemaService _sistemaService;
    public ParametrosController(Empresa empresa, ISistemaService sistemaService)
    {
        _sistemaService = sistemaService;
    }


    public PagedDataModel<ParametroDTO> Get(
        [FromUri]ParametroFiltro filter, int …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc-3 asp.net-mvc-4

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

在附加对象后加载属性

我在问这里之前试图谷歌它,我找不到任何解决方案.

我有这两个类和一对一的映射

我试图附加一个新对象

    public class MyContext : DbContext
    {
        public IDbSet Operacoes { get; set; }
        public IDbSet Apontamentos { get; set; }
    }

    public class Operacao
    {
        public string Filial { get; set; }
        public string Codigo { get; set; }
        public string Descricao { get; set; }
    }

    public class Apontamento
    {
        public int Id { get; set; }
        public string Filial { get; set; }
        public string OperacaoCodigo { get; set; }
        public virtual Operacao Operacao { …

entity-framework-4 ef-code-first

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

与模式匹配的正则表达式线

我想要一个正则表达式模式来匹配具有以下模式的文本文件中的所有行:

TcQuery {dynamic_content} Alias "{dynamic_content}" New
Run Code Online (Sandbox Code Playgroud)

如果文本文件包含以下两行:

//tcquery c_query alias "qrybklog" new           <= This one shouldn´t be found because there is two backslashes before TcQuery.

tcquery c_query alias "qrybklog" new             <= I want a pattern to match this line
Run Code Online (Sandbox Code Playgroud)

我试过这个,但两条线都匹配:

        var prw = System.IO.File.ReadAllText(@"d:\backlog.prw", Encoding.ASCII);

        prw = "//TcQuery c_query Alias teste1 new";
        prw = "\nTcQuery c_query Alias teste2 new";
        prw = "\nTcQuery c_query Alias teste3 new";
        prw = "\n//TcQuery c_query Alias teste4 new";
        var regexTcQuery = new Regex("TcQuery+[ *]+[0-9a-zA-Z_]+[ *]+alias+[ …
Run Code Online (Sandbox Code Playgroud)

c# regex

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