小编Jon*_*han的帖子

C#Linq SortedList过滤到SortedList

我有一些代码,我正在做一些奇怪的事情,从SortedList获取信息,然后回到另一个SortedList.我做了我的where子句,然后必须单独将所有KeyValuePairs放回到新的SortedList中.

不是最有效,或者确实是推荐的方式,但我似乎无法找到更好的方法.

这是代码:

SortedList<DateTime, CalendarDay> most_days = 
                                new SortedList<DateTime, CalendarDay>();
List<KeyValuePair<DateTime, CalendarDay>> days = this.all_days.Where (
                                  n => n.Value.IsRequested || n.Value.IsApproved
                                  ).ToList();
foreach (KeyValuePair<DateTime, CalendarDay> kvp in days)
    most_days.Add(kvp.Key, kvp.Value);
Run Code Online (Sandbox Code Playgroud)

关于如何清理它的任何想法(正如他们所说,少即是多)?

谢谢,

乔纳森

c# linq filter sortedlist

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

将旧版ASP.NET应用程序转换为MVC3和HTML5

我有一个ASP.NET应用程序,它运行得很好,但它变得笨拙.我想在其中为任何新页面合并MVC3功能,并逐步转换所有旧页面.我计划使用Razor语法.

我有它的工作.我可以很好地提供页面.这是一场战斗,但事情看起来不错.我相信我拥有所有目录结构和引用的DLL.

我唯一真正的问题是IDE:

当我右键单击Controllers文件夹时,我无法选择"添加控制器..".Ditto for Views,以及项目右键菜单中的"Add Area ...".

我无法添加与MVC3(或MVC2,我也已安装)相关的模板项.

我也无法验证HTML5(所有标签都无效),但我认为这是一个单独的问题,因为此功能对我的MVC3项目也不起作用.

如果它对于作为MVC3项目创建的项目(使用Razor语法)不能很好地工作,我甚至不知道这些东西都丢失了,所以它必须是解决方案或项目中特定的东西,但我无法在任何地方找到它.

我的问题:我 在哪里更改这个以便IDE将其确认为MVC项目?

asp.net visual-studio-2010 asp.net-mvc-3

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

Oracle中的重音和不区分大小写的COLLATE等效项

在Microsoft SQL Server中,如果我想在区分大小写的数据库中不敏感地搜索大小写,我可以运行以下SQL:

SELECT * FROM MyTable
WHERE MyField = 'BobDillon' COLLATE Latin1_General_CI_AI
Run Code Online (Sandbox Code Playgroud)

这将找到所有"bobdillon"条目.

如果我想在Oracle中做同样的事情,我知道我可以这样做:

SELECT * FROM MyTable
WHERE UPPER(MyField) = 'BOBDILLON'
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有直接等效的collat​​e关键字,所以我可以根据需要搜索区分大小写和重音敏感度.

oracle

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

如何在 DIV 中显示 XML 数据

我想在 DIV 中显示 XML 数据。我的xml代码如下:

<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don’t forget me this weekend!</body>
</note>
Run Code Online (Sandbox Code Playgroud)

我希望它完全像在 div 中一样显示,所有行间距和 xml 标签都完全一样。

这可能吗?

html xml

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

Linq to SQL查询未返回预期结果

任何人都可以向我解释为什么这两个在功能上有所不同?

第一个在我的样本数据上返回null,第二个返回预期的结果.我把这+ @""部分放在一起,以避免在空字符串上调用replace.

代码始终在我的示例数据上返回null:

to_follows_contact = db.CONTACTs.Where(n =>
    n.ACCOUNTID == account.ACCOUNTID
    && (
        (n.FIRSTNAME + n.MIDDLENAME + n.LASTNAME + @"").Replace(@" ", @"") 
                                                            == @"TOFOLLOW"
        ||
        (n.FIRSTNAME + n.MIDDLENAME + n.LASTNAME + @"").Replace(@" ", @"") 
                                                            == @"FOLLOWTO"
    )
).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

代码返回我的示例数据的正确联系人:

foreach (CONTACT n in db.CONTACTs.Where(n => n.ACCOUNTID == account.ACCOUNTID))
{
    string ContactName = (n.FIRSTNAME + n.MIDDLENAME + n.LASTNAME + @"")
                         .Replace(@" ", @"");
    if (ContactName == @"TOFOLLOW" || ContactName == @"FOLLOWTO")
        to_follows_contact = n;
}
Run Code Online (Sandbox Code Playgroud)

c# lambda linq-to-sql

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