草庐IT

xsockets.net

全部标签

c# - 为什么在 .NET 中转换比反射快?

我有一个事件处理程序,它需要确定类型并在匹配特定类型时执行代码。最初我们将它转​​换为一个对象,如果它不为空,我们就执行代码,为了加快速度,我使用了反射,但它实际上减慢了它的速度,我不明白为什么。这是一个代码示例Trace.Write("StartingusingReflection");if(e.Item.GetType()==typeof(GridDataItem)){boolisWatch=Convert.ToBoolean(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["IsWatch"]);if(isWatch){

c# - 如何使用 .NET 压缩目录?

我有一个包含多个文件的目录。我想将此文件夹压缩为zip或tar.gz文件。我如何在C#中完成他的工作? 最佳答案 您可以使用DotNetZipLibrary.它具有相当丰富和有用的功能。编辑:string[]MainDirs=Directory.GetDirectories(DirString);for(inti=0;i 关于c#-如何使用.NET压缩目录?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

c# - 如何将数据从 .NET 持久保存到磁盘?

我有各种丰富的数据结构(主要是树),我想将它们保存到磁盘,这意味着我不仅想将它们写入磁盘,而且我希望保证数据已完全写入并在掉电。其他人似乎设计了将平面数据库表中的丰富数据结构编码为从父节点到子节点的查找表的方法。这有助于对数据运行SQL查询,但我不需要这样做:我只想保存和加载我的树。显而易见的解决方案是将所有内容作为一个blob存储在数据库中:单个条目可能包含一个长字符串。这是对数据库的滥用还是推荐的做法?另一种解决方案可能是使用XML数据库?有没有我应该考虑的数据库替代方案?最后,我是从F#执行此操作的,因此从.NET持久化数据的交key解决方案将是理想的...编辑:请注意,格式化(

c# - .net 异常捕获 block

以下catchblock之间有什么区别?try{...}catch{...}和try{...}catch(Exception){...}我意识到,在任何一种情况下,异常实例都不可用,但有什么我可以用一个实例做而另一个实例做不到的事情吗? 最佳答案 它们几乎相同。来自C#语言规范,第8.10节:SomeprogramminglanguagesmaysupportexceptionsthatarenotrepresentableasanobjectderivedfromSystem.Exception,althoughsuchexcep

c# - ASP.NET Web 表单自定义验证器未触发

我的页面上有一个用于文件上传控件的自定义验证器。然后我还有一个按钮。我已经像这样定义了我的自定义验证器事件......protectedvoidcvVendorBriefFile_ServerValidate(objectsource,ServerValidateEventArgsargs){CustomValidatorfileUploadValidator=(CustomValidator)source;FileUploadvendorBriefFileUpload=(FileUpload)fileUploadValidator.Parent.FindControl(fileUpl

c# - .NET 错误处理

我一直在编写.NET应用程序,并且对该框架中包含的错误处理印象深刻。当捕捉到进程抛出的错误或代码中某处的错误时,我喜欢包含消息(ex.Message,通常非常通用)以及堆栈跟踪(ex.stacktrace)这有助于将问题追溯到特定位置。举个简单的例子,假设我们正在用一个方法将数字记录到日志中:publicvoidExampleMethod(intnumber){try{intnum=number...openconnectiontofile...writenumbertofile}catch(Exceptionex){....dealwithexception(ex.message,e

c# - ASP.net MVC View 是 "class"吗?

...首先,我这样做只是出于好奇。这里没有实际应用,只是为了了解和修补......ASP.NETView具有类似Model的属性和ViewData甚至还有方法。您甚至可以使用@Using就像普通的class.cs文件一样。我知道它的类型是WebPageView我的主要问题是:是一门课吗?应该是因为它是一个类型,但是..我应该也能做到这一点(Razor引擎):@{publicclassPerson{//etc...}varp=newPerson();}@p.Name但是我不能..为什么?注意:目前是C#、ASP.net初学者。 最佳答案

c# - 如何在 ASP.NET 中使用 Repeater 控件进行分页?

'/>'>'>'>在我的项目中,RepeaterControl工作正常。现在我需要分页来替换这些数据。但我没有这方面的任何信息。可能有人给我关于这个问题的建议。如下图所示。 最佳答案 Repeater控件中没有内置分页,而是基于this。文章中,您可以通过为页面创建另一个Repeater控件并使用PagedDataSource作为它的源来在Repeater控件中实现分页。首先,将此添加到您的标记中:"runat="server"ForeColor="White"Font-Bold="True">接下来,在您的代码后面添加以下属性:/

c# - 如何在 Akka.NET 中使用 TestKit

我正在尝试测试我的Akka.NETactors,但在使用TestKit和理解它的工作原理时遇到了一些问题。由于Akka.NET中还没有关于单元测试的官方文档,我已经探索了Akka.NET存储库以获取示例代码,但那里使用的示例对我不起作用。我引用的测试是ReceiveActorTests.cs和ReceiveActorTests_Become.cs,因为这些与我尝试在我的应用中测试的场景很接近。这是一些伪代码:给定这个ActorpublicclassGreeter:ReceiveActor{publicGreeter(){NotGreeted();}privatevoidNotGreet

c# - .net 核心 'Response.Cookies.Append' 不作为某个站工作

我正在按照ASP.NETCore2.1文档(https://learn.microsoft.com/en-us/aspnet/core/fundamentals/localization?view=aspnetcore-2.1#implement-a-strategy-to-select-the-languageculture-for-each-request)中的建议使用“Response.Cookies.Append”来设置文化。它在我的工作站上运行得非常好。但是当我的同事获取我的更改时,它不起作用。在调试过程中,我发现“Response.Cookies.Append”没有添加co