方法优化

我有一个void函数,其中包含很多if语句,所有这些都是必需的,我真的无法删除任何东西。 但我觉得它可以做得更好。 使用一些LINQ.Where ,类或类似的东西。 我想在尽可能少的字符中优化和表达void Smooth : void Smooth(ref int botChips, ref bool botTurn, Label botStatus, int name, int n, int r) { Random rand = new Random(); int rnd = rand.Next(1, 3); if (rounds == 0 || rounds == 1) { if (call = RoundN(botChips, n)) { Call(ref botChips, ref botTurn, botStatus); } else […]

在iTextSharp中确定属性,例如PDF是单面还是双面

我正在使用iTextSharp来阅读和管理PDF文档。 诸如为背景或徽标和支持者盖印覆盖物之类的东西。 PDF是声明文件,所以我不能举一个例子。 我想知道如何查看PDF的设置,以查看PDF文件是单面还是双面,以及那种信息。 任何帮助或建议将不胜感激。 目前我测试第二页的某些标准,这是一个糟糕而糟糕的方法。 提前谢谢,快乐编码!

c#屏幕截图虚拟桌面

我找到了一种用c#创建虚拟桌面的方法。 现在我想知道我们是否可以截取特定桌面的屏幕截图,如果是这样的话? 提前致谢 暴雪

在不使用Windows窗体的情况下绘制C#图形

有人可以提供一个不使用Windows窗体绘制图形的示例吗? 我有一个没有控制台窗口或Windows窗体的应用程序,但我需要绘制一些基本图形(线条和矩形等) 希望有道理。

使用C#包装器从任务栏中删除应用程序?

有没有办法为现有应用程序构建一个C#包装器,允许我从任务栏中删除它? 更多信息: 我有一个计时器应用程序,我想使用但不要因为它很好……很糟糕。 请参阅https://superuser.com/questions/92774/quickbooks-timer-replacement-windows 。 所以为了减少它,我想知道我是否可以构建一个包装器,然后只是与该包装器进行交互。 从任务栏中删除计时器,然后让我的应用程序隐藏/显示它将是朝这个方向迈出的一步。 另一种选择是对计时器进行逆向工程。 但那是另一天的又一个项目。 现在我很乐意隐藏这件事。

async / await函数比较

我试图理解async / await,我想知道两种方法是否相同。如果不能解释原因? public async Task GetClient() { return await _clientRepository.GetAll().Where(x => x.Id == 1).FirstOrDefaultAsync(); } public Task GetClient2() { return Task.FromResult(_clientRepository.GetAll().Where(x => x.Id == 1).FirstOrDefault()); } public async Task Run() { var result = await GetClient(); var result2 = await GetClient2(); }

ASP.NET中的异步任务

我正在尝试强制ASP.NET站点在启动时将大量对象预加载到缓存中。 每个对象生成需要2-10秒,这意味着顺序加载1200多个对象需要40分钟才能完成。 我显然不希望该网站需要40分钟才能启动,因此只需在Application_Start中坚持预加载程序就不是一个选择。 我无法将其移到Web应用程序(即Windows服务或外部进程)的上下文之外,因为我需要访问缓存。 理想情况下,此任务将异步执行,同时让网站继续开展业务。 一位同事建议使用BackgroundWorker类来分拆新线程,这听起来是一个非常好的解决方案。 但是,据我所知,该特定类实际上并不适用于ASP.NET,而是适用于WinForms。 我担心线程可能会在它完成之前被杀掉。 BackgroundWorker类是否可以安全地在ASP.NET应用程序中使用? 还有什么其他方法可以解决这个问题? 更新: 我将研究Windows AppFabric以获得更好的缓存,我可以从Web应用程序外部加载。 但是,在那之前我必须继续使用ASP.NET Cache和BackgroundWorker类。 它没有用,我问了一个新问题, 从新线程将对象加载到缓存中 。

combobox与WPF DataGrid中的复选框

我需要在WPF的DataGrid中显示带有复选框选项的combobox。 请提供任何解决方案。 我试过下面的代码 它会像这样输出 任何人都可以帮助加载combobox中的项目集合并更正我的代码。 CS代码: private void resultGrid_Loaded(object sender, RoutedEventArgs e) { var programs = new List(); programs.Add(new Programs(“test”, false)); programs.Add(new Programs(“test1”, false)); programs.Add(new Programs(“test2”, true)); //var grid = sender as DataGrid; resultGrid.ItemsSource = programs; Combo.ItemsSource = programs; } 而型号: public class Programs { public Programs(string Program, bool IsChecked) { this.Program = Program; this.IsChecked […]

C#中的随机数生成

我一直在编写一些C#代码用于训练练习,其中我必须创建一个随机矩形数组。 问题是我的GetRandomRectangle函数生成的矩形始终是相同的。 我正在使用System.Random生成矩形的坐标。 我意识到这是因为Random对象是使用默认构造函数创建的,因此具有相同的种子。 我已修改它以便为每个矩形获得不同的种子,并且它工作正常。 问题是 – 它如何决定’默认种子’? 我注意到它似乎也没有随着时间的推移而改变,用种子2创建的矩形将始终被赋予相同的尺寸。 这可能是我可以谷歌的东西,但很高兴听到你们的意见和信息。 谢谢 :)

C#同时使用2 sqldatareader?

你好,有没有办法同时使用两个sqldatareader? 我正在编写一个程序 我得到错误,因为我同时使用2个读者 代码示例 SqlCommand LoadSilk = new SqlCommand(“SELECT silk_own FROM SK_Silk WHERE JID = (SELECT JID FROM TB_User WHERE StrUserID = ‘”+ comboBox1.Text +”‘)”, Connection); SqlDataReader SilkReader = LoadSilk.ExecuteReader(); SqlCommand LoadCharacter = new SqlCommand(“SELECT * FROM SRO_VT_SHARD.DBO._Char WHERE CharID IN (SELECT CharID FROM SRO_VT_SHARD.DBO._User WHERE UserJID = “+ JID +”)”, Connection); SqlDataReader CharacterReader = […]