小编nnm*_*mss的帖子

无法动态分派扩展方法

我想在MVC中使用DropDownListFor

@foreach (var item in Model)
{
    @Html.DropDownListFor(modelItem => item.TitleIds, new SelectList(ViewBag.TitleNames as System.Collections.IEnumerable, "TitleId", "Title.TitleText"), "No: " + ViewBag.MagNo, new { id = "TitleIds" })   
}
Run Code Online (Sandbox Code Playgroud)

在控制器中

public ActionResult ArticleList(int id)
{
    ArticleWriter_ViewModel viewModel = new ArticleWriter_ViewModel();
    Func<IQueryable<NumberTitle>, IOrderedQueryable<NumberTitle>> orderByFunc = null;
    Expression<Func<NumberTitle, bool>> filterExpr = null;
    if (id > 0)
    {
        filterExpr = p => p.MagazineId.Equals(id);
    }
    var wholeTitles = unitOfWork.NumberTitleRepository.Get(filterExpr,  orderByFunc, "Magazine,Title").ToList();          

    ViewBag.MagNo = wholeTitles[0].Magazine.MagNo.ToString();
    ViewBag.MagId = wholeTitles[0].Magazine.Id;
    ViewBag.TitleNames = wholeTitles;

    return View("../Panel/Magazine/ArticleList", "_BasicLayout", viewModel);
}
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个错误 …

c# asp.net-mvc asp.net-mvc-3

110
推荐指数
3
解决办法
5万
查看次数

连接多个公用表表达式

我有两个Query,Query1:

with cte as (
select
        dbo.Cable.*,
        row_number() over(partition by dbo.Cable.TagNo order by dbo.Cable.CableRevision desc) as rn
    from dbo.Cable 
    where (dbo.Cable.CableRevision = @CoreRevision )  
    )
select *
from cte
where rn = 1
Run Code Online (Sandbox Code Playgroud)

还有Query2

with cte as (
select
        dbo.Cable.TagNo,dbo.Core.*,
        row_number() over(partition by dbo.Core.CoreNo order by dbo.Core.CoreRevision desc) as rn
    from dbo.Core INNER JOIN 
     dbo.Cable ON dbo.Cable.Id = dbo.Core.CableId
    where  (dbo.Core.CoreRevision <= @CoreRevision  )
    )
select *
from cte
where rn = 1
Run Code Online (Sandbox Code Playgroud)

这两个查询是相关的Query1.TagNo,Query2.TagNo 如何使用加入这两个查询,是否可以使用WithCommand …

sql t-sql common-table-expression sql-server-2008

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

关键字'case'附近的语法不正确

这个守则有什么问题

CREATE FUNCTION [dbo].[ChangeRevision] (@oldRev tinyint)
RETURNS varchar(1) 
AS
begin

declare @newRev varchar(1)
DECLARE @newval int
set @newval=CAST (@oldRev as int)

case @newval
begin
when 0 then set @newRev='Z'
when 1 then set @newRev='A'
when 2 then set @newRev='B'
when 3 then set @newRev='C'

end
return @newRev;

END
Run Code Online (Sandbox Code Playgroud)

我有以下错误关键字'case'附近的语法不正确.

关键字"返回"附近的语法不正确.

t-sql sql-server

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

T-SQL递归查询 - 怎么做?

我有一个自我引用关系的表,

ID  parentID UserId Title 
 1    null     100   A
 2     1       100   B
 3     2       100   C 
 4     2       100   D
 5     null    100   E
 6     5       100   F
Run Code Online (Sandbox Code Playgroud)

对于ID = 1的所有记录及其子项,我想将UserId从100更新为101,所以我想拥有

ID  parentID UserId Title 
 1    null     101   A
 2     1       101   B
 3     2       101   C 
 4     2       101   D
 5     null    100   E
 6     5       100   F
Run Code Online (Sandbox Code Playgroud)

我怎么能在T-SQL中做到这一点?

sql t-sql sql-server

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

TFServer:无法更新数据,因为服务器时钟可能设置不正确

我正在研究TFServer上的项目.到目前为止,每件事情都很好,服务器时间提前了4个小时.从那时起我无法检查任何东西,因为我收到以下错误

TFS2010 TF54000:无法更新数据,因为服务器时钟可能设置不正确.联系您的Team Foundation Server管理员

我在网上搜索了我发现这个 http://www.windows-tech.info/4/d1a37cfc6cf38a79.php

所以我看看tbl_Changeset我今天有两个记录

780 1 2013-12-09 11:13:56.930 807 1 781 1 2013-12-09 11:16:40.727 808 1

我在14:00写这篇文章肯定比11:13大,所以我再也无法签到了?

tfs visual-studio-2010 tfs2010

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

获取表单的父表单名称

我有一个可以从其他两个表单打开的表单 (form3)。表格 1 和表格 2。

我怎样才能得到哪一个是form3的父级?

c# winforms

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

获取没有GROUP BY的记录计数

假设我有一个这样的表

Id  TagNo  F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 CoreNo
 1   1000   A  B  C  D  E  F  R  E W   W   D    1
 2   1000   A  B  C  D  E  F  R  E W   W   D    2
 3   1000   A  B  C  D  E  F  R  E W   W   D    3
 4   1001   A  B  C  D  E  F  R  E W   W   D    1
 5   1001   A  B  C  D  E  F  R …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

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

除了方法,只为一个实例提供了错误的答案

我通过这个命令创建一个列表

var terminalList = sourceLists.Where(t => t.TagNo == tagList)
                              .Where(t => t.FromTerminal.Length > 0)
                              .Select(t => parseTerminal(t.FromTerminal))
                              .OrderBy(t => t).ToList();
Run Code Online (Sandbox Code Playgroud)

它适用于Tagno除了创建这样的列表之外的每一个

terminalList={33,35}
Run Code Online (Sandbox Code Playgroud)

当我使用此命令时

var result = Enumerable.Range(terminalList.Min(), terminalList.Max())
                       .Except(terminalList)
                       .ToList();
Run Code Online (Sandbox Code Playgroud)

我检查了一下.terminalList.Min()将是33并且terminalList.Max()将是35.并且在这种情况下terminalList有2个项目.

我得到了这个答案:

result = {34,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67}
Run Code Online (Sandbox Code Playgroud)

这是错误的正确答案{34}.

我该如何追踪问题?

c# linq

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