小编Met*_*urf的帖子

何时使用.第一次以及何时使用.FirstOrDefault和LINQ?

我已经四处寻找并且没有真正找到关于何时想要使用.First以及何时想要使用.FirstOrDefaultLINQ 的明确答案.

.net c# linq

797
推荐指数
9
解决办法
54万
查看次数

MVC3 Razor DropDownListFor Enums

试图让我的项目更新到MVC3,我找不到的东西:

我有一个简单的ENUMS数据类型:

public enum States()
{
  AL,AK,AZ,...WY
}
Run Code Online (Sandbox Code Playgroud)

在我的包含此数据类型的模型视图中,我想将其用作DropDown/SelectList:

public class FormModel()
{
    public States State {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

非常简单:当我为这个分部类使用自动生成视图时,它忽略了这种类型.

我需要一个简单的选择列表,当我通过我的AJAX - JSON POST方法点击提交和处理时,将枚举的值设置为所选项.

而不是视图(???!):

    <div class="editor-field">
        @Html.DropDownListFor(model => model.State, model => model.States)
    </div>
Run Code Online (Sandbox Code Playgroud)

提前感谢您的建议!

c# razor asp.net-mvc-3

84
推荐指数
6
解决办法
8万
查看次数

LINQ查询以查找列表中的项是否包含在另一个列表中

我有以下代码:

List<string> test1 = new List<string> { "@bob.com", "@tom.com" };
List<string> test2 = new List<string> { "joe@bob.com", "test@sam.com" };
Run Code Online (Sandbox Code Playgroud)

我需要删除test2中有@ bob.com或@ tom.com的人.

我试过的是这个:

bool bContained1 = test1.Contains(test2);
bool bContained2 = test2.Contains(test1);
Run Code Online (Sandbox Code Playgroud)

bContained1 = false但是bContained2 = true.我宁愿不遍历每个列表,而是使用Linq查询来检索数据.bContained1与我在下面创建的Linq查询的条件相同:

List<string> test3 = test1.Where(w => !test2.Contains(w)).ToList();
Run Code Online (Sandbox Code Playgroud)

上面的查询适用于完全匹配但不是部分匹配.

我查看了其他查询,但我可以找到与Linq的近似比较.任何想法或任何你可以指向我的地方都会有很大的帮助.

c# linq

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

C#类型比较:Type.Equals vs operator ==

Resharper建议改变以下内容:

Type foo = typeof( Foo );
Type bar = typeof( Bar );

if( foo.Equals( bar ) ) { ... }
Run Code Online (Sandbox Code Playgroud)

至:

if( foo == bar ) { ... }
Run Code Online (Sandbox Code Playgroud)

operator ==

// Summary:
//     Indicates whether two System.Type objects are equal.
//
// Parameters:
//   left:
//     The first object to compare.
//
//   right:
//     The second object to compare.
//
// Returns:
//     true if left is equal to right; otherwise, false.
public static bool operator ==( …
Run Code Online (Sandbox Code Playgroud)

c# types comparison-operators

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

用Unity解析IEnumerable <T>

Unity可以自动解决IEnumerable<T>吗?

假设我有一个带有这个构造函数的类:

public CoalescingParserSelector(IEnumerable<IParserBuilder> parserBuilders)
Run Code Online (Sandbox Code Playgroud)

我在容器中配置单个IParserBuilder实例:

container.RegisterType<IParserSelector, CoalescingParserSelector>();
container.RegisterType<IParserBuilder, HelpParserBuilder>();
container.RegisterType<IParserBuilder, SomeOtherParserBuilder>();
Run Code Online (Sandbox Code Playgroud)

我可以在不必实现自定义实现的情况下完成这项工作IEnumerable<IParserBuilder>吗?

var selector = container.Resolve<IParserSelector>();
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还没有以任何简单的方式表达这一点,但我仍然在提升Unity,所以我可能错过了一些东西.

c# ienumerable dependency-injection unity-container

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

如何在WPF中覆盖父控件的不透明度?

Grid在WPF中设置不透明度时,所有子元素似乎都会继承它Opacity.如何让子元素不继承父元素的不透明度?

例如,以下父网格中间有一个子网格,背景设置为红色,但由于父级的不透明度,背景显示为粉红色.我希望子网格具有纯色,不透明的背景:

<Grid x:Name="LayoutRoot">

  <Grid Background="Black" Opacity="0.5">
    <Grid.RowDefinitions>
      <RowDefinition Height="0.333*"/>
      <RowDefinition Height="0.333*"/>
      <RowDefinition Height="0.333*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="0.333*"/>
      <ColumnDefinition Width="0.333*"/>
      <ColumnDefinition Width="0.333*"/>
    </Grid.ColumnDefinitions>

    <-- how do you make this child grid's background solid red
        and not inherit the Opacity/Transparency of the parent grid? -->
    <Grid Grid.Column="1" Grid.Row="1" Background="Red"/>
  </Grid>

</Grid>
Run Code Online (Sandbox Code Playgroud)

wpf transparency opacity

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

具有超过100个属性的类的设计模式

您在设计一个拥有超过100个房产的班级时会提供哪些建议/建议/指导?

背景

  • 该类描述了发票.发票可以有超过100个描述它的属性,即日期,金额,代码等......
  • 我们提交发票的系统使用100个属性中的每一个,并作为单个实体提交(与在不同时间提交的各个部分相对).
  • 描述发票的属性是业务流程的一部分.业务流程无法更改.

建议?

  • 在面对设计具有100个属性的类时,其他人做了什么?即,用100个属性中的每一个创建类?
  • 以某种方式打破它(如果是这样,如何)?
  • 或者这在您的经历中是否相当正常?

编辑 在阅读了一些很好的回答并进一步思考之后,我认为这个问题确实没有任何单一答案.然而,由于我们最终根据LBrushkin的答案对我们的设计进行了建模,我给了他信任.尽管不是最受欢迎的答案,但LBrushkin的回答帮助我们定义了几个界面,我们在整个应用程序中聚合和重用这些界面,并推动我们调查一些可能有用的模式.

c# oop design-patterns class-design

22
推荐指数
4
解决办法
2866
查看次数

简而言之,关于Func <>可以说些什么

我现在一直在看Func <>,我已经设法避免它(现在).但是,现在看起来我无法永远避开它.例如,我尝试了Dynamic Linq,但几乎所有内容都是以Func <>为例.我已经尝试过我的一本书(C#2008/Deitel&Deitel)和MSDN,但我还没有得到它.他们都直接跳入主题.

  1. 关于Func <>,可以说(用几句话)
  2. 我可以在网上获得一些可以让我开始这个问题的链接吗?

谢谢你的帮助

c# func

20
推荐指数
4
解决办法
1174
查看次数

如何创建.NET Core类库并从.NET 4.6项目引用它?

我想要:

  • 创建一个定义一些接口和简单通用助手类的类库.它将依赖于泛型集合,IQueryable<T>但没有第三方依赖(好吧JetBrains.Annotations).
  • 能够从任何地方引用该类库(特别是UWP,net46和ASP.Net Core RC2)
  • 理想情况下,始终使用project.json系统,尽管如果需要我准备牺牲它.
  • 将完成的库发布到NuGet源,然后在其他应用程序中使用它

在Visual Studio 2015.2中创建我的类库项目时,我找到了该Class Library (.NET Core)模板

用于将类库创建为可以针对任何平台的NuGet包的项目模板

任何平台!很棒...但我无法让它发挥作用.经过大量的摆弄,我目前有以下内容project.json(我现在可能完全打破了它):

{
"title": "My Really Useful Class Library",
"copyright": "Copyright © 2015-16 Tigra Astronomy, all rights reserved",
"description": "Really neat stuff",
"language": "en-GB",
"version": "1.0.0-*",
"dependencies": {
    "JetBrains.Annotations": "10.1.4",
    },
"frameworks": {
    "netstandard1.5": {
        "imports": "dnxcore50",
        "dependencies": {
            "NETStandard.Library": "1.5.0-rc2-24027",
            "System.Linq.Expressions": "4.0.11-rc2-24027"
            }
        }
    "net46": {
        "frameworkAssemblies": {
            "System.Collections": "4.0.*"
            },
        "dependencies": {}
        }
    },
    "buildOptions": {
        "xmlDoc": …
Run Code Online (Sandbox Code Playgroud)

compatibility .net-core project.json asp.net-core

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

将TFS 2010历史记录导出到Excel或文本文档

如何从TFS 2010导出包含用户,日期和完整注释(未截断)的历史记录?

例如,在团队资源管理器中:右键单击团队成员名称>显示签入历史记录.这将显示用户的登记历史记录,但评论会被截断.

tfs export

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