Tag: c#

在窗口应用程序中写入命令行

我正在尝试让我的基于WinForm的C#与命令行合作,但是我很难让它发挥得很好。 例如,我有这个代码: [STAThread] static void Main(string[] args) { foreach (string s in args) { System.Windows.Forms.MessageBox.Show(s); Console.WriteLine(“String: ” + s); } Mutex appSingleton = new System.Threading.Mutex(false, “WinSyncSingalInstanceMutx”); if (appSingleton.WaitOne(0, false)) { try { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); //start logger Logger.singleton.makeOpen(true); Application.Run(new MainForm(false)); } catch (Exception) { } finally { appSingleton.Close(); Logger.singleton.makeOpen(false); } } else { System.Windows.Forms.MessageBox.Show(“Sorry, only one […]

如何使用asp.net序列化使用值和属性反序列化xml节点

我有4个小类来从一个xml轮询中反序列化xml,到可用的类来构建轮询。 现在,我知道如何从类中设置属性,以匹配xml中的某个属性或元素,如果该元素只是一个简单的字符串,但如果该元素也具有如下例所示的属性,该怎么办? 3 2 5 问题类看起来像这样: [Serializable()] public class Question { [XmlAttribute(“Id”)] public Guid QuestionId { get; set; } [XmlArray(“AnswerItems”)] [XmlArrayItem(“AnswerItem”, typeof(AnswerItem))] public AnswerItem[] AnswerItems { get; set; } } [Serializable()] public class AnswerItem { [XmlAttribute(“Id”)] public Guid QuestionId { get; set; } // how do i fetch the value of this node? // its […]

Windows 98风格的进度条

我使用的是Windows 7,因此我的进度条都具有绿色外观。 我想要一些更简单的东西,也许是类似于Windows 98进度条的东西。 有没有一种简单的方法可以更改进度条的样式,还是我必须手动重新创建它?

async / await会影响tcp服务器的性能吗?

我在C#5.0中创建一个Tcp服务器,我在调用tcpListener.AcceptTcpClientAsync和networkStream.ReadAsync时使用了await关键字 但是当我使用Process Explorer检查我的服务器的CPU使用率时,我得到以下结果: Tcp Sync版本: CPU使用率为10% Tcp异步版本: 30%的CPU使用率一半的使用是内核使用。 此外,我通过在网络流的外观中添加计数器来测量我接收数据的时间,并且异步版本循环120,000次,而同步版本循环2,500,000次。 在收到的消息/秒中,当从3个不同的客户端接收消息时,异步版本比同步版本慢15%。 为什么Async Version使用比Sync版本更多的CPU? 这是因为async / await关键字吗? 这是正常的Async Tcp服务器比它的同步速度慢吗? 编辑:这是异步tcp服务器代码的示例 public class AsyncTcpListener : ITcpListener { private readonly ServerEndpoint _serverEndPoint; // Custom class to store IpAddress and Port public bool IsRunning { get; private set; } private readonly List _tcpClientConnections = new List(); private TcpListener _tcpListener; public […]

以编程方式确定AD密码策略

我一直在使用System.DirectoryService (ADSI)类和方法来创建和更改Active Directory中的用户。 最近我们添加了一项function,允许用户通过系统设置自己的密码。 但是,如果密码策略集未接受密码,则使用SetPassword方法会引发exception。 userEntry.Invoke(“SetPassword”, new object[] {password}); 我的问题是:在尝试使用SetPassword方法之前,如何检查密码是否符合密码策略? 我在这篇文章中读到你可以从根域节点获取密码策略设置,但是在哪里可以阅读更多关于每个属性的含义? 例如,需要哪些字符来填充“复杂性”政策? 一旦我知道这一点,我就可以实现自己的密码检查方法,但由于这是一种容易出错的方法,我宁愿使用内置检查,并向用户提供有关其密码错误的适当信息。

C#ListBox ObservableCollection

我正在尝试使用ListBox.DataSource = ObservableCollection,但是当我的OC更新时,我无法弄清楚如何让列表框自动更新。 我可以在OC上挂起CollectionChanged事件,但是我需要对列表框做什么才能使其更新?

线程中的exception处理

最近我参加了一次采访。 给我一个代码片段。我知道,面试官是从albhari的线程样本中获取的。 public static void Main() { try { new Thread (Go).Start(); } catch (Exception ex) { // We’ll never get here! Console.WriteLine (“Exception!”); } } static void Go() { throw null; } 将上述代码修改为 public static void Main() { new Thread (Go).Start(); } static void Go() { try { … throw null; // this exception […]

HttpWebRequest将凭据传递给下一个HttpWebRequest

我正在使用HttpWebRequest登录页面并获取一些信息。 然后我使用该信息创建一个新的HttpWebRequest以获取更多信息。 我不想使用WebClient。 如何将使用第一个HttpWebRequest登录时获得的凭据传递给第二个? 编辑:如果我使用CookieCollection,那么这将是空的。 我只是尝试使用WebClient作为最后的手段,即使它没有工作,第二个请求将我带回登录屏幕。 我注意到在WebBrowser中有一个cookie。

WCFexception处理

如果我的WCF服务中发生exception,那么将该错误传达给客户端的最佳方法是什么? 我应该在服务上登录并重新抛出soapexception吗? 或者我应该记录它并返回用户友好的消息?

在Sql连接字符串中Trusted = yes / no是什么意思?

在Sql连接字符串中Trusted = yes / no是什么意思? 我正在创建一个连接字符串,如下所示: string con= string.Format( “user id=admin;password=admin;server={0};Trusted_Connection=yes;database=dbtest;connection timeout=600”, _sqlServer); 请帮忙