将 DefaultIfEmpty 与对象一起使用?

2024-02-18

我在 MSDN 上看到了一个示例,如果没有返回任何内容,它可以让您指定默认值。见下文:

List<int> months = new List<int> { };
int firstMonth2 = months.DefaultIfEmpty(1).First();

是否可以将此功能与对象一起使用?例子:

class object
{
  int id;
  string name;
}

code:

List<myObjec> objs = new List<myObjec> {};
string defaultName = objs.DefaultIfEmpty(/*something to define object in here*/).name;

UPDATE:

我想我可以做这样的事情:

List<myObjec> objs = new List<myObjec> {};
string defaultName = objs.DefaultIfEmpty(new myObjec(-1,"test")).name;

但一直没能做到。应该注意的是,我实际上尝试在使用 LINQ-To-SQL 的 DBML 中定义的对象上使用此方法。不确定这在这种情况下是否会产生影响。


您需要将实例化的类作为参数传递DefaultIfEmpty.

class Program
{
    static void Main(string[] args)
    {
        var lTest = new List<Test>();
        var s = lTest.DefaultIfEmpty(new Test() { i = 1, name = "testing" }).First().name;
        Console.WriteLine(s);
        Console.ReadLine();

    }
}

public class Test
{
    public int i { get; set; }
    public string name { get; set; }
}

要添加它并使其更优雅(IMO),请添加一个默认构造函数:

class Program
{
    static void Main(string[] args)
    {
        var lTest = new List<Test>();
        var s = lTest.DefaultIfEmpty(new Test()).First().name;
        Console.WriteLine(s);
        Console.ReadLine();

    }
}

public class Test
{
    public int i { get; set; }
    public string name { get; set; }

    public Test() { i = 2; name = "testing2"; }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 DefaultIfEmpty 与对象一起使用? 的相关文章

  • 如何在C++中实现模板类协变?

    是否可以以这样一种方式实现类模板 如果模板参数相关 一个对象可以转换为另一个对象 这是一个展示这个想法的例子 当然它不会编译 struct Base struct Derived Base template
  • c 中的错误:声明隐藏了全局范围内的变量

    当我尝试编译以下代码时 我收到此错误消息 错误 声明隐藏了全局范围内的变量 无效迭代器 节点 根 我不明白我到底在哪里隐藏或隐藏了之前声明的全局变量 我怎样才能解决这个问题 typedef node typedef struct node
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • A* 之间的差异 pA = 新 A;和 A* pA = 新 A();

    在 C 中 以下两个动态对象创建之间的确切区别是什么 A pA new A A pA new A 我做了一些测试 但似乎在这两种情况下 都调用了默认构造函数 并且仅调用了它 我正在寻找性能方面的任何差异 Thanks If A是 POD 类
  • 是否有比 lex/flex 更好(更现代)的工具来生成 C++ 分词器?

    我最近将源文件解析添加到现有工具中 该工具从复杂的命令行参数生成输出文件 命令行参数变得如此复杂 以至于我们开始允许它们作为一个文件提供 该文件被解析为一个非常大的命令行 但语法仍然很尴尬 因此我添加了使用更合理的语法解析源文件的功能 我使
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • AccessViolationException 未处理

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 为了在我的 ASP
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • char指针或char变量的默认值是什么[重复]

    这个问题在这里已经有答案了 下面是我尝试打印 char 变量和指针的默认值 值的代码 但无法在控制台上看到它 它是否有默认值或只是无法读取 ASCII 范围 include
  • 已过时 - OpenCV 的错误模式

    我正在使用 OpenCV 1 进行一些图像处理 并且对 cvSetErrMode 函数 它是 CxCore 的一部分 感到困惑 OpenCV 具有三种错误模式 叶 调用错误处理程序后 程序终止 Parent 程序没有终止 但错误处理程序被调
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • GDK3/GTK3窗口更新的精确定时

    我有一个使用 GTK 用 C 语言编写的应用程序 尽管该语言对于这个问题可能并不重要 这个应用程序有全屏gtk window与单个gtk drawing area 对于绘图区域 我已经通过注册了一个刻度回调gtk widget add ti
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 方法参数内的变量赋值

    我刚刚发现 通过发现错误 你可以这样做 string s 3 int i int TryParse s hello out i returns false 使用赋值的返回值是否合法 Obviously i is but is this th
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但

随机推荐

  • 在 Instagram 中打开 AVMutableComposition 时出现白色视频

    当我导出一个AVMutableComposition I use PHPhotoLibrary将视频保存到相机胶卷 在里面creationRequestForAssetFromVideoAtFileURL 完成处理程序 然后我在 Insta
  • 停止进程显示 C# 窗口

    我正在尝试自动化一个应用程序 该应用程序在启动时创建一个没有用户交互的 GUI 窗口 但我不知道如何隐藏实际的窗口 我尝试使用 ProcessStartInfo 因此 Process Start new ProcessStartInfo U
  • SQL输出:是否可以创建临时输出列?

    例如 我的数据库中有一个如下表 商品编号 商品名称 价格 项目状态 其中商品 ID int 商品名称 string 价格 int 项目状态 枚举 至于物品状态 假设 2 代表 即将推出 1 代表 可用 而 0 代表 售完 我想显示信息 以便
  • 我可以扩展类并覆盖封闭的枚举类型吗?

    如果我有一个类包含enum类型 我可以扩展此类并覆盖枚举类型或向此枚举添加更多常量吗 目的是用户能够调用getColor 方法而不知道动态对象是来自基类还是派生类 例如 public class Car private String nam
  • 如何获取不同值节点XML

    我是 XML 新手 所以希望得到您的帮助 我有以下 XML
  • 粘胶参数

    我是 openGL 的初学者 在所有简单的示例中 main 函数都有参数 而 glutinit func 使用这些参数 但我不明白为什么它们是必要的 我在命令参数中什么也没写 程序仍然有效 它们有什么用 你能给个例子吗 glutInit a
  • Django 多表继承和左外连接

    最近 我遇到了 Django 关于模型继承的常见问题 我有一堆不同的模型 我想单独或作为一组显示 读作 查询数据库中的所有内容 或仅查询某个类别 型号 的项目 最终 我选择了多表继承 我的模型看起来像 class Unit models M
  • Matplotlib:多个轮廓变量的轮廓图的多个图例

    我需要在同一页面上绘制多个变量的多个等高线图 我可以使用 MATLAB 来完成此操作 请参阅下面的 MATLAB 代码 我无法让 matplotlib 显示多个图例 任何帮助将非常感激 Python代码 import numpy as np
  • pandas.Series/DataFrame.fillna 限制中的错误?

    我一直在尝试使用填充 DataFrame 和 Seriesfillna与value and limit关键词 这limit不包括时受到尊重value 但只要包括value限制不再受到尊重 这是使用 DataFrame 的示例 import
  • 如何使用 Python 中的 Bing Speech API 转录语音文件?

    如何使用 Python 中的 Bing Speech API 转录语音文件 我的语音文件超过 15 秒 我知道人们可以在 Python 中使用 Bing Speech REST API https gist github com jelli
  • MongoDB 在包含 50.000.000 个以上文档的大型集合上写入性能较差

    我有一个 MongoDB 用于存储产品数据204 639 403项目 这些数据已经按项目所在国家 地区吐出到四个逻辑运行在同一台物理机器上的同一个 MongoDB 进程中的数据库 以下是每个逻辑数据库的文档数量列表 CoUk 56 719
  • Android 服务和内容提供者之间的区别

    我正在开发一个应用程序 并对 Android 中的服务和内容提供商的概念感到困惑 在实践中 它们之间会有什么区别 Content Provider是一个外观 它定义了一种在应用程序之间共享数据的方法 您可以将本地数据库附加到您的应用程序或创
  • 休眠验证器对未来至少 24 小时内的日期的注释

    我知道存在注释 Future 如果我用这个注释来注释字段 Future private Date date 日期必须是当前时刻之后的未来日期 现在我需要验证该日期至少在当前时刻之后 24 小时 我怎样才能做到呢 明天之后 java Targ
  • awk 中打印变量

    在此脚本中 我希望 awk 打印变量 file f order and sum NR 全部在一行中 bin bash for file in pmb mpi tau xhpl mpi tile io fftw do for f in 2 5
  • 是否可以通过 UI 将新字段添加到 bigquery 中 RECORD 类型的现有字段中?

    是否可以向 bigquery 中的 RECORD 类型的现有字段添加新字段 例如 如果我当前的架构是 u fields u mode u NULLABLE u name u test1 u type u STRING u fields u
  • Ruby 中的自定义日志记录最佳实践

    在 Ruby 中管理自定义日志记录的最佳实践是什么 我应该对记录器进行猴子补丁来做我想做的事吗 或者从它延伸出来 还是委托 红宝石的方法是什么 我厌倦了为此而定制的黑客 我想要更干净 更优雅的东西 贝茨有一个截屏视频 http railsc
  • 链接 OpenCV 4.1.0,包含有效,库无效

    将 Ubuntu 从 16 04 更改为 18 04 将 OpenCV 从 3 4 1 更改为 4 1 0 后 我无法编译 任何东西 一步步 我从 github 下载了源代码 设置了这些标志 cmake D CMAKE BUILD TYPE
  • 字符串上的 Python hash() 函数

    CPython2 7中如何计算某个特定字符串的哈希值 例如 这段代码 print hash abcde 1000 即使我重新启动 Python 进程并重试 我做了很多次 也会返回相同的值 所以 看来id 此计算中不使用字符串的 内存地址 对
  • 如何在 Mongoose 模式中设置数组大小限制

    您能否告诉我在创建 Mongoose 模式时是否有任何方法可以设置数组大小的限制 例如 var peopleSchema new Schema name type String required true default true here
  • 将 DefaultIfEmpty 与对象一起使用?

    我在 MSDN 上看到了一个示例 如果没有返回任何内容 它可以让您指定默认值 见下文 List