Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

7
将Dictionary <string,object>转换为匿名对象?
首先,为了使事情更清楚,我将从顶部解释我的情况: 我有一个具有以下签名的方法: public virtual void SendEmail(String from, List&lt;String&gt; recepients, Object model) 我想做的是生成一个匿名对象,该对象具有模型对象的属性以及前两个参数。将模型对象展平为PropertyInfo []非常简单。因此,我想到了创建一个字典,该字典将保存PropertyInfo和前两个参数,然后将其转换为匿名对象,其中键是属性的名称,值是属性的实际值。 那可能吗?还有其他建议吗?

3
如何使用C#代码构建DataTemplate?
我正在尝试为winform互操作构建下拉列表,并且正在代码中创建下拉列表。但是,在基于指定的DataTemplate绑定数据时遇到问题。 我想念什么? drpCreditCardNumberWpf = new ComboBox(); DataTemplate cardLayout = new DataTemplate {DataType = typeof (CreditCardPayment)}; StackPanel sp = new StackPanel { Orientation = System.Windows.Controls.Orientation.Vertical }; TextBlock cardHolder = new TextBlock {ToolTip = "Card Holder Name"}; cardHolder.SetBinding(TextBlock.TextProperty, "BillToName"); sp.Children.Add(cardHolder); TextBlock cardNumber = new TextBlock {ToolTip = "Credit Card Number"}; cardNumber.SetBinding(TextBlock.TextProperty, "SafeNumber"); …
81 c#  wpf  datatemplate 

8
C#中的'=>'语法是什么意思?
我只是在这个论坛的一些问题中提到了这种语法,但是Google和其他搜索引擎往往会在搜索中屏蔽除字母和数字之外的任何内容,因此无法搜索出“ =&gt;”。 有人能告诉我它是什么以及如何使用吗?
81 c#  syntax 


9
ConfigurationManager.AppSettings-如何修改和保存?
听起来似乎太琐碎了,我做了文章中建议的相同操作,但没有按预期工作。希望有人能指出我正确的方向。 我想保存每个AppSettings的用户设置。 一旦关闭Winform,我将触发此操作: conf.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); if (ConfigurationManager.AppSettings["IntegrateWithPerforce"] != null) ConfigurationManager.AppSettings["IntegrateWithPerforce"] = e.Payload.IntegrateCheckBox.ToString(); else config.AppSettings.Settings.Add("IntegrateWithPerforce", e.Payload.IntegrateCheckBox.ToString()); config.Save(ConfigurationSaveMode.Modified); 因此,当条目尚不存在时,它将仅创建该条目,否则将修改现有条目。但是,这不能保存。 1)我做错了什么? 2)我希望在哪里将应用程序设置的用户设置再次保存?是在Debug文件夹中还是C:\ Documents and Settings \ USERNAME \ Local Settings \ Application Data文件夹中?


12
MVC:在哪里放置业务逻辑?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2个月前关闭。 改善这个问题 首先,我已经看到了很多有关此问题,但是背后的原因却不够多。如果我的问题不够好,应该删除,我会理解的。 例如,我看过这个问题,有超过45个赞成票的答案说他建议您将业务逻辑放入模型中,这听起来很合逻辑。 但是,我的第一个大型项目已经在控制器中完全使用了所有BL,因为我没有对这些事情提出疑问,而是看一下如何完成操作(AccountController如果您选择带有表单身份验证的MVC,该操作会自动添加)。所有方法看起来都充满了BL。还是可能添加的最少代码量让我无所适从? youtube上的一个人通过将所有逻辑放到模型中来问我他是否正确,起初我不是!然后我开始认为也许他是对的!? 那么,毕竟我应该把业务逻辑放在哪里?如果在模型类中,那么在控制器中的方法中应该考虑多少代码是正常数量?一行最多只能在控制器中的模型中调用某种方法,然后返回到视图?

5
从OpenFileDialog路径/文件名中提取路径
我正在编写一个从选择文件开始的小实用程序,然后需要选择一个文件夹。我想将文件夹默认设置为所选文件所在的位置。 OpenFileDialog.FileName返回完整的路径和文件名-我想要的只是获取路径部分(没有文件名),因此我可以将其用作初始选择的文件夹。 private System.Windows.Forms.OpenFileDialog ofd; private System.Windows.Forms.FolderBrowserDialog fbd; ... if (ofd.ShowDialog() == DialogResult.OK) { string sourceFile = ofd.FileName; string sourceFolder = ???; } ... fbd.SelectedPath = sourceFolder; // set initial fbd.ShowDialog() folder if (fbd.ShowDialog() == DialogResult.OK) { ... } 是否有任何.NET方法可以做到这一点,或者我需要使用regex, split, trim,etc吗?
81 c#  .net  parsing  path 

11
如何修复启动时出现异常代码0xE0434352的.NET Windows应用程序崩溃?
我在Visual Studio 2010中构建了.NET Windows窗体应用程序。我还通过Visual Studio 2010构建了相应的安装程序/安装程序包。它是作为32位(x86)应用程序构建的。(我们使用仅32位的第三方Windows窗体控件)。 我能够运行安装程序包并将其成功部署到其他Windows 7 64位环境和32位Windows XP盒中。已安装的应用程序可以在这些程序上正常运行。 但是,当我尝试运行64位Windows Server 2008 R2时,应用程序在启动时崩溃。它通过安装程序成功安装,没有任何错误。 加载应用程序时,它似乎崩溃了。我在应用程序的第一行放置了一个消息框,以查看是否超过了加载时间。该消息框未显示,因此我认为它是在加载/初始化应用程序期间发生的。 到目前为止,我还没有发现太多事情要做。从详细信息中,我看到以下内容: Exception Code: E0434352 我到处钓鱼/谷歌搜索是否有明显的东西,但是什么也没看见。我看到了一些有关CLR中可能的堆栈溢出的引用。 Windows窗体应用程序使用以下参考文件构建: 开发快递 Infragistics Winforms控件 ORACLE DataAccess DLL 兔子MQ 有什么问题 我该如何解决呢?如何调试以获得更多有用的信息?

17
无科学记数的双字符串转换
.NET Framework中如何在没有科学符号的情况下将双精度转换为浮点字符串表示形式? “小”样本(有效数字可以是任何大小,例如1.5E200或1e-200): 3248971234698200000000000000000000000000000000 0.00000000000000000000000000000000000023897356978234562 没有一种标准的数字格式是这样的,并且自定义格式似乎也不允许在小数点分隔符之后使用开放的数字位数。 这不是重复如何双转换为字符串没有权力代表10(E-05) ,因为那里给出的答案也不会在手解决问题。这个问题可接受的解决方案是使用固定点(例如20位数字),这不是我想要的。定点格式和修剪冗余0并不能解决问题,因为固定宽度的最大宽度为99个字符。 注意:解决方案必须正确处理自定义数字格式(例如,其他小数点分隔符,具体取决于区域性信息)。 编辑:问题实际上只是关于替换上述数字。我知道浮点数如何工作以及可以使用和计算哪些数字。

3
Microsoft内部的PriorityQueue <T>中的错误?
在PresentationCore.dll中的.NET Framework中,有一个通用PriorityQueue&lt;T&gt;类,其代码可以在此处找到。 我写了一个简短的程序来测试排序,结果并不理想: using System; using System.Collections.Generic; using System.Diagnostics; using MS.Internal; namespace ConsoleTest { public static class ConsoleTest { public static void Main() { PriorityQueue&lt;int&gt; values = new PriorityQueue&lt;int&gt;(6, Comparer&lt;int&gt;.Default); Random random = new Random(88); for (int i = 0; i &lt; 6; i++) values.Push(random.Next(0, 10000000)); int lastValue = int.MinValue; …


5
域对象,POCO和实体之间有什么区别?
我对他们的印象基本相同。模型对象也一样吗? 现在,在我的体系结构中,我有: class Person { public string PersonId; public string Name; public string Email; public static bool IsValidName() { /* logic here */ } public static bool IsValidEmail() { /* logic here */ } } class PersonService { private PersonRepository pRepository; PersonService() { pRepository = new PersonRepository(); } public bool …

5
Dispatcher.BeginInvoke:无法将lambda转换为System.Delegate
我正在打电话System.Windows.Threading.Dispatcher.BeginInvoke。该方法的签名是这样的: BeginInvoke(Delegate method, params object[] args) 我正在尝试将其传递给Lambda,而不必创建委托。 _dispatcher.BeginInvoke((sender) =&gt; { DoSomething(); }, new object[] { this } ); 它给我一个编译器错误,说我 无法将lambda转换为System.Delegate。 委托的签名将对象作为参数并返回void。我的lambda与此匹配,但无法正常工作。我想念什么?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.