草庐IT

系统端

全部标签

c# - .net 中的垃圾收集器是系统范围的还是应用程序范围的?

在与同事的讨论中,我怀疑.net中的垃圾收集器是在系统范围内工作还是在应用程序范围内工作。意味着如果每个应用程序都有自己的GC那么它会影响系统性能吗?我对此有点困惑。 最佳答案 每个进程都有自己的托管堆,将单独收集。没有系统范围的堆,所以不可能有系统范围的GC。(如果您在同一个进程中运行多个CLR,它们每个也会有自己的GC。不过这种情况非常罕见。) 关于c#-.net中的垃圾收集器是系统范围的还是应用程序范围的?,我们在StackOverflow上找到一个类似的问题:

c# - 系统托盘中的 .Net 控制台应用程序

有没有办法在最小化时将控制台应用程序放在系统托盘中? 最佳答案 是的,你可以做到这一点。创建Windows窗体应用程序并添加NotifyIconcomponent.然后使用以下方法(foundonMSDN)分配并显示一个Console[DllImport("kernel32.dll")]publicstaticexternBooleanAllocConsole();[DllImport("kernel32.dll")]publicstaticexternBooleanFreeConsole();[DllImport("kernel3

c# - .mdf"failed with the operating system error 2(系统找不到指定的文件。)

protectedvoidregister_Click(objectsender,EventArgse){AddUser(userName.Text,password.Text,confirm.Text);}voidAddUser(stringname,stringpass,stringconfirm){Useru=newUser(name,pass,confirm);if(u.Valid){using(vardb=newSiteContext()){db.User.Add(u);db.SaveChanges();}}}}publicclassUser{publicintUserId{

c# - 在 x86 系统上编译 C# .NET x64 二进制文件

我有一个C#项目,其中包含对ScintillaNET的引用。不幸的是,ScintillaNET喜欢检测机器的架构并根据运行的架构加载nativeDLL。这意味着我的项目必须预编译成x86和x64版本(由于上述检测,我无法使用任何CPU)。问题是我的构建服务器是x86-only。有没有一种方法可以在x86机器上以x64模式编译.NET程序集?据我所知,切换只是强制计算机加载所需体系结构的程序集,并且在编译时实际上不会输出任何体系结构相关的代码,但是,在构建服务器上的Mono2.10.6下编译时我得到如下错误:“错误CS0016:无法写入文件‘ScintillaNet’,原因:AMD64”

c# - 带有插件式系统的 EF 多上下文。如何在运行时应用迁移?

我有一个Web应用程序,它应该作为一系列插件组合到核心基础架构中。一个插件是一个编译好的CLRdll+一些内容文件,这些文件将被放置在某个位置。我正在使用Autofac来扫描和注册程序集中的类型,并使用一些奇特的路由从那里为Controller和Assets提供服务。但是,由于每个插件程序集都可以包含一个DbContext(按照惯例,每个插件程序集都将使用自己的数据库),所以我不太清楚在那里该做什么。现在我发现了很多关于如何使用多个上下文的内容,但这都需要知道这些内容在开发时。我的应用程序直到运行时才知道将使用什么上下文。理想情况下,我正在寻找的是某种方式来做ApplyMigratio

c# - ASP.NET Core Windows 服务中的 Serilog 无法将文件写入本地系统

我正在将ASP.NETCoreWeb服务器作为Windows服务运行,并使用Serilog登录到%PROGRAMDATA%中的文件。当我将服务作为本地系统运行时,没有任何记录。我在Windows10上使用.NetCore2.2。我通过在我的服务中触发一个错误来测试,该错误在错误级别写入日志事件。我已经尝试以我自己的管理帐户运行该服务并且日志记录工作正常;该问题仅在作为本地系统运行时出现。我有其他使用.NetFramework作为本地系统运行的Windows服务,使用Serilog登录到%PROGRAMDATA%没有问题,但这是我第一次在.NetCore上尝试它。我可以使用Directo

c# - 设计一个灵活高效的问答系统

我一直在研究动态问答系统,但我无法为该系统创建高效且灵活的设计。我很想知道是否有既定的设计模式或设计此系统的任何建议。我想做什么我有一组问题。回答完之后,会显示另一组问题,取决于前一组问题的答案。如此重复,直到不需要更多问题。问题的答案都是bool值、多项选择或数字。重要的部分是,大多数问题仅在满足一组特定标准时才会显示(基于之前的答案)。我需要主要支持bool逻辑的标准,例如And、Or、Not、Equals、GreaterThan和LessThan。例如,假设我已经收到了诸如Age等问题的答案,Gender,和State.下一个问题是InSchool?,但只有在以下情况下才会显示:

c# - 抑制系统覆盖,Windows Phone 8.1 (Silverlight)

我想知道如何隐藏导航栏。如果可以在XAML中指定SuppressSystemOverlay的代码,就像系统托盘一样:shell:SystemTray.IsVisible="False"。我什至在msdn上都找不到描述,这似乎是指使用WinRT构建的wp8.1,而我的应用程序使用的是silverlight。 最佳答案 对不起,答案是否定的。从8.1开始,只能通过thispost中描述的代码实现.但是,像这样在构造函数中执行隐藏代码应该会产生类似的效果:publicMainPage(){InitializeComponent();awa

c# - Unity3D 新的 UI 系统和 ListView

我正在尝试使用新的UnityUI(2014)构建ListView。垂直和可滚动列表应包含图像按钮,它们应根据分配的图像保持纵横比!所有按钮都应拉伸(stretch)到屏幕宽度。按钮不应与下一个按钮有间隙。(很像iOS中的UITableView)我发现新UI附带的VerticalLayoutGroup对我没有帮助,因为它不能很好地嵌入到ScrollRect中。我认为它需要根据包含的项目调整大小才能使其与ScrollRect一起使用。另一个问题是我无法让按钮保持宽高比,我通过编写一个小脚本解决了这个问题(见下文)。为了实际实现所需的列表效果,我创建了一个带有ScrollRect的Canva

C# 如何强制在双显示器系统的主显示器中显示启动画面?

在具有两个显示器的系统中显示启动画面时,我遇到了问题。当我在主显示器中启动应用程序,然后在显示初始屏幕之前将鼠标指针移动到第二个显示器时,我的初始屏幕“跟随”鼠标指针。这意味着,初始屏幕显示在第二个显示器中,在它完成工作后消失,应用程序显示在主显示器中。这看起来很丑陋且不专业。我曾尝试在表单的属性中设置属性FormStartPosition.CenterScreen,并在运行时在我的表单构造函数中设置它,但这些都不起作用。顺便说一下,我正在使用C#。有什么提示可以让启动画面显示在与我的应用程序相同的监视器中吗?我们将不胜感激任何帮助。您好,维克多 最佳答案