草庐IT

相对深度

全部标签

c# - 深度不可变类型的惰性初始化是否需要锁?

如果我有一个深度不可变类型(所有成员都是只读的,如果它们是引用类型成员,那么它们也引用深度不可变的对象)。我想在类型上实现一个惰性初始化属性,如下所示:privateReadOnlyCollectionm_PropName=null;publicReadOnlyCollectionPropName{get{if(null==m_PropName){ReadOnlyCollectiontemp=/*dolazyinit*/;m_PropName=temp;}returnm_PropName;}}据我所知:m_PropName=temp;...是线程安全的。我不太担心两个线程同时竞相初始化

c# - 如何在 C#.NET 中不同类型的对象之间进行深度复制

我需要按字段名称映射ObjectV1和ObjectV2之间的所有字段值和子集合。ObjectV2与ObjectV1位于不同的命名空间中。模板ClassV1和ClassV2之间的继承已被打折,因为这2个类需要独立发展。我考虑过同时使用反射(速度很慢)和二进制序列化(速度也很慢)来执行公共(public)属性的映射。是否有首选方法?还有其他选择吗? 最佳答案 作为每次都使用反射的替代方法,您可以创建一个辅助类,它使用Reflection.Emit动态创建复制方法-这意味着您只会在启动时受到性能影响。这可能会为您提供所需的灵active和

c# - 对于企业应用程序开发,F# 相对于 C# 有哪些优势?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:WhatarethebenefitsofusingC#vsF#orF#vsc#?我的团队目前正在使用C#.NET为我们公司开发企业应用程序。我们有Winforms开发的历史,但现在正在转向SilverLight。我的老板最近看到了一个关于F#的视频,认为它看起来非常令人兴奋,他让我去看看。我的问题是——在企业应用程序开发领域,函数式语言(如F#)相对于OO语言(如C#)有什么优势?我真的很想看看是否有任何令人信服的理由甚至可以开始考虑转变。一些F#和C#比较代码也可能很好看。

c# - 单元测试项目c#上的相对路径

我有一个包含控制台应用程序和单元测试的解决方案。vartarget=newValidator();vartargetFile=@"C:\Folder\SubFolder\AnotherSubFolder\Development\DEV\src\UnitTest\TargetFolder\file.xml";boolactual=target.Validate(targetFile);Assert.AreEqual(true,actual);Validator位于控制台应用程序项目中,而我的file.xml位于单元测试项目中的文件夹中。这个单元测试通过了,但是我想确保当我将它checki

c# - Web.Config 中文件的 ASP.NET 相对路径

我想在我的应用程序中的Web.Config文件中指定一个文件的路径,然后在Controller中调用该路径。从我在网上找到的内容来看,我已经完成了大部分工作。Web.ConfigController//PathofthedocumentstringxmlData=ConfigurationManager.AppSettings["filePath"].ToString();但是,这指向了错误的位置。我怎样才能将它指向我存储在App_Data文件夹中的文件,从我的应用程序的根目录开始? 最佳答案 您可以使用Server.MapPath

c# - 从深度嵌套的 json 对象获取数据

我真的被这个问题困扰了2天,我怎样才能从深度嵌套的json对象中获取数据。我在网上找到了一个json工具http://www.jsoneditoronline.org/http://jsonformat.com/当您将json粘贴到其中时,它会显示所有对象数组等,因此我可以深入挖掘数据并获取我想要的信息。当我调试代码并在以下位置设置断点时:foreach(rates.ToArray()中的JToken数据),取决于我尝试的内容取决于我得到的错误,最后一个错误是。Errorconvertingvalue"@rateChange"totype'Web.UI.Controllers.Home

c# - 获取 Web 项目引用的类库项目中的相对文件路径

我有一个引用类库的ASP.Net网站。在类库中,我需要将文件读入内存。在我的类库的顶层有一个名为EmailTemplateHtml的文件夹,其中包含我要读入的文件MailTemplate.html。我该怎么做? 最佳答案 在VisualStudio中,您可以配置您的库,以便将文件复制到依赖它的任何项目的构建目录中。然后您可以在运行时获取构建目录的路径,以便读取您的文件。分步说明,从一个新的解决方案开始:创建您的应用程序项目和类库项目。通过Properties->Add->Reference从应用程序项目添加一个reference到类

c# - .Net Core 1.1 中的疯狂深度路径长度

有没有人在.NETCore1.1中看到一个问题,在netcoreapp1.1\publish文件夹下,他们最终有一个bin文件夹,该文件夹似乎在自身循环并最终导致路径太长消息出现在Windows中。尝试在Windows资源管理器中删除此文件夹会导致出现“源太长”消息。唯一的解决办法是使用RoboCopy.这是生成路径之一的示例:bin\Debug\netcoreapp1.1\publish\bin\Debug\netcoreapp1.1\publish\bin\Debug\netcoreapp1.1\publish\bin\Debug\netcoreapp1.1\publish\bin

c# - 如何将kinect的深度图像与彩色图像对齐

Kinect上的颜色和深度传感器生成的图像略微不对齐。我怎样才能改变它们使它们排成一行? 最佳答案 关键是调用“Runtime.NuiCamera.GetColorPixelCoordinatesFromDepthPixel”这是运行时类的扩展方法。它返回一个WriteableBitmap对象。这个WriteableBitmap会随着新帧的到来自动更新。所以它的用法非常简单:kinect=newRuntime();kinect.Initialize(RuntimeOptions.UseColor|RuntimeOptions.Use

c# - 生成低位深度的图像文件?

bpp=每像素位数,因此32bpp表示R/G/B/A为8/8/8/8。就像.NET对这些“System.Drawing.Imaging.PixelFormat”有一个枚举。现在,一旦我有了包含我的图形的位图或图像对象,我将如何将它保存到一个文件/我将采用什么格式有什么用?什么图像文件格式(JPEG/GIF/PNG)支持低位深度,如16bpp或8bpp(而不是通常的32bpp或24bpp) 最佳答案 我不认为其他人的回答测试了他们的代码,因为GDI+PNG不支持Encoder.BitDepthEncoderParameter。事实上,