草庐IT

3gp-how-convert

全部标签

c# - Visual Studio : How to manage code shared between projects

这可能以前发布过,但我不确定要查找哪些搜索词!快速解释。我有几个项目之间共享的代码。此代码本身仍在进行中。问题是每当我需要更新此代码时,我不想重复3次,这将成为一场噩梦。有没有办法将它添加到项目中,而无需将其复制到项目文件夹中?即我希望共享类作为链接到我的3个项目中C:\coderepository\sharedclass.cs不是\eachproject\bin\sharedclass.cs我是否必须将其创建为自己的库项目?如果编译器可以将其编译为“外部”代码,那就更好了。干杯。 最佳答案 正如其他人所说,您只需在解决方案资源管理

c# - 线程专有数据 : how to store and access?

在.NET中是否有可能将对象实例绑定(bind)到线程的当前执行上下文?这样我就可以在代码的任何部分执行类似CurrentThread.MyObjectData.DoOperation()的操作并确保我访问特定于线程的数据?谢谢! 最佳答案 你可以看看ThreadStaticAttribute.另一个有用的方法是SetData/GetData这允许您存储与当前线程相关的数据。 关于c#-线程专有数据:howtostoreandaccess?,我们在StackOverflow上找到一个类似

c# - 最佳实践 : How to expose a read-only ICollection

我有一个ICollection称为foos在我想公开为只读的类中(参见thisquestion)。我看到接口(interface)定义了一个属性.IsReadOnly,这似乎是合适的......我的问题是:我如何让类(class)的消费者明白foos是只读的?我不想依赖他们记住查询.IsReadOnly在尝试未实现的方法之前,例如.Add().理想情况下,我想公开foos作为ReadOnlyCollection,但它没有实现IList.我应该公开foo吗?通过一个名为的方法,例如GetReadOnlyFooCollection而不是通过属性(property)?如果是这样,这不会让那些

c# - Convert.ToDouble ("4089.90") 输出 40.899,00 为什么?

我正在开发一个使用数字精度的软件,但我遇到了这个问题,当我将一个字符串转换为double时,它​​会输出不同的文化。例如我使用Convert.ToDouble("4089.90");//itoutputs40.899,00很奇怪,因为在我的电脑上它工作正常,但在客户端的电脑上(在区域设置中具有相同的文化)向我显示了后者的输出。我知道我可以使用修复它Convert.ToDouble("4089.90",System.Globalization.CultureInfo.InvariantCulture);但程序中有很多代码使用“Convert.ToDouble”,我不想全部更改,另一方面我

c# - .NET 配置文件 : How to check if ConfigSection is present

考虑:行:block:假设该行在.config文件中可用,而该block丢失。如何以编程方式检查block是否存在?[编辑]对于那些迅速将问题标记为否定的天才们:我已经试过了ConfigurationManager.GetSection()和varconfig=ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);varsection=config.GetSection("unity");varsInfo=section.SectionInformation;varisDeclared=sInfo.

c# - Asp.Net 路由 : How do I ignore multiple wildcard routes?

我想忽略多个通配符路由。在asp.netmvcpreview4中,它们附带:RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");我还想添加如下内容:RouteTable.Routes.IgnoreRoute("Content/{*pathInfo}");但这似乎破坏了一些在我的程序中生成url的助手。想法? 最佳答案 这里有两种可能的解决方案。向忽略路由添加约束以确保只有应忽略的请求才会匹配该路由。有点笨拙,但应该可以。RouteTable.Routes.Ignor

c# - C# : How to get the response stream? 中的套接字

我正在尝试替换它:voidProcessRequest(objectlistenerContext){varcontext=(HttpListenerContext)listenerContext;UriURL=newUri(context.Request.RawUrl);HttpWebRequest.DefaultWebProxy=null;HttpWebRequesthttpWebRequest=(HttpWebRequest)WebRequest.Create(URL);httpWebRequest.Method=context.Request.HttpMethod;httpWe

c# - Visual Studio 2010 : How to generate documentation out of code comments?

这个问题在这里已经有了答案:HowdoIexportthecodedocumentationinC#/VisualStudio2008?(7个答案)关闭8年前。我为我的代码写了一些注释。现在如何使用VisualStudio2010生成文档或类似的东西?

c# - C++/命令行界面 : How do I declare abstract (in C#) class and method in C++/CLI?

以下C#代码在C++/CLI中的等价物是什么?publicabstractclassSomeClass{publicabstractStringSomeMethod();} 最佳答案 只需稍微混合关键字即可获得正确的语法。abstract在C#中位于前面,但在C++/CLI中位于末尾。与override关键字相同,今天也被C++11兼容的编译器识别,它们期望它位于函数声明的末尾。就像传统C++中的=0标记函数抽象一样:publicrefclassSomeClassabstract{public:virtualString^SomeM

c# - 跨线程操作无效(How to access WinForm elements from another module events?)

我有一个带有串行端口信号事件的模块serialPort.DataReceived.AddHandler(SerialDataReceivedEventHandler(DataReceived));DataReceived在哪里letDataReceivedab=rxstringProcessData正在调用WinForms方法letProcessData(a,b)=dataProcessor.Invoke(a,b)|>ignore这是privatevoidProcessData(objectsender,EventArgse){byte[]m=Core.ncon.ArrayRead;s