草庐IT

分区合并

全部标签

c# - 否定空合并运算符

我有一堆字符串需要使用.Trim(),但它们可以为空。如果我可以做类似的事情会更简洁:stringendString=startString!??startString.Trim();如果左边的部分不为空,则基本上返回右边的部分,否则只返回空值。我刚刚结束了使用三元运算符,但是是否可以为此目的使用null合并运算符? 最佳答案 您可以创建一个扩展方法,该方法在尝试修剪值时返回null。publicStringTrimIfNotNull(thisstringitem){if(String.IsNullOrEmpty(item))ret

c# - 抽象基类/派生类的空合并问题

为什么C#空合并运算符无法解决这个问题?Catc=newCat();Dogd=null;Animala=d??c;这会报错运算符??不能应用于Dog和Cat类型的操作数考虑到以下编译,这看起来很奇怪。Animala=d;a=c;上下文代码如下:publicabstractclassAnimal{publicvirtualvoidMakeNoise(){Console.WriteLine("noise");}}publicclassDog:Animal{publicoverridevoidMakeNoise(){Console.WriteLine("wuff");}}publicclas

c# - 如何合并两个 JObject?

这个问题在这里已经有了答案:MergetwoJson.NETarraysbyconcatenatingcontainedelements(3个答案)关闭6年前。我有第一个json:{"data":[{"id":"id1","field":"field1"}],"paging":{"prev":"link1",}}还有第二个:{"data":[{"id":"id2","field":"field2"}],"paging":{"prev":"link2",}}我想合并/合并两个数据数组,例如:{"data":[{"id":"id1","field":"field1"},{"id":"id2

c# - 将两个图像合并为一个新图像

我有两个不同尺寸的JPEG文件:图像1(宽度1,高度1)图像2(宽度2,高度2)我想创建Image3(Width3,Height3),左边是Image1,右边是Image2。 最佳答案 像这样的东西会给你一个新的图像,两个原始图像并排。Bitmapbitmap=newBitmap(image1.Width+image2.Width,Math.Max(image1.Height,image2.Height));using(Graphicsg=Graphics.FromImage(bitmap)){g.DrawImage(image1,

c# - 为什么空合并运算符 (??) 在这种情况下不起作用?

当我运行此代码时,我遇到了意外的NullReferenceException,省略了fileSystemHelper参数(因此将其默认为null):publicclassGitLog{FileSystemHelperfileSystem;//////Initializesanewinstanceoftheclass.//////ThepathtoaGitworkingcopy.///Ahelperclassthatprovidesfilesystemservices(optional).///Thrownifthepathisinvalid.///ThrownifthereisnoGi

c# - 使用 json.net 在序列化期间合并两个对象?

我遇到了如下情况,谁能帮我实现一下?例如,如果我有类(class):-publicclassSample{publicStringname{get;set;}publicMyClassmyclass{get;set;}}我的Myclass将如下所示:publicclassMyClass{publicStringp1{get;set;}publicStringp2{get;set;}}当我使用Json.net序列化Sample类的对象时,我得到如下结果并且运行良好。{"name":"...","myclass":{"p1":"...","p2":"..."}}它是正确的,但我想知道是否可

c# - 是否可以使用 Epplus 在 Excel 中复制行(包含数据、合并、样式)?

问题是我需要使用整个集合的单个模板多次将集合中的数据插入Excel。using(varpckg=newExcelPackage(newFileInfo(association.TemplatePath))){varworkSheet=pckg.Workbook.Worksheets[1];vardataTable=WorksheetToDataTable(workSheet);/*Somestuff*/FindAndReplaceValue(workSheet,dictionary,row);}privateDataTableWorksheetToDataTable(ExcelWork

c# - 合并两个 Linq lambda 表达式

Expression>fn1=x=>x.PossibleSubPath.MyStringProperty;Expression>fn2=x=>x.Contains("someliteral");有没有办法创建一个新的lambda表达式,它基本上使用fn1的输出并将其用作fn2的输入?Expression>fnCombined=...我知道我可以一次创建函数,但问题是我正在编写一些通用代码,因此确实需要能够分别创建这两个函数,然后以Linq可以的方式组合它们在我的数据库对象(EntityFramework)上使用它们。 最佳答案 所以

c# - 如何找到集合的所有分区

我有一组不同的值(value)观。我正在寻找一种方法来生成该集合的所有分区,即将集合划分为子集的所有可能方法。例如,集合{1,2,3}有以下分区:{{1},{2},{3}},{{1,2},{3}},{{1,3},{2}},{{1},{2,3}},{{1,2,3}}.由于这些是数学意义上的集合,因此顺序无关紧要。例如,{1,2},{3}与{3},{2,1}相同,不应是单独的结果。集分区的完整定义可以在Wikipedia上找到. 最佳答案 我找到了一个简单的递归解决方案。首先,让我们解决一个更简单的问题:如何找到恰好由两部分组成的所有分

c# - 如何将两种类型的 C# 列表合并为一种?

我创建了两个列表,比如X和Y。这两个列表属于不同类型。(即ListX和ListY)。这两个列表中的值不同。但是有一个DateTime这两个列表中的字段。我需要根据date对这些列表进行排序字段。我有单独的函数来打印列表A和列表B的详细信息。假设排序后的列表是这样的来自列表A的元组,来自列表B的元组,来自列表A的元组,来自列表B的元组,我的目的是遍历此列表并调用适当的函数来显示详细信息。即,如果元组来自列表A,则调用函数打印列表A的详细信息,反之亦然。 最佳答案 您可以创建一个接口(interface)来托管您的常用属性和函数,然后在