Tag: .net 4.5

以对数刻度显示刻度标签MS Chart(log-log)

我在Visual Studio 2015(C#)中用MS图表创建了一个用对数刻度(两个轴)绘制的图(见图)。 我需要在x轴上添加更多网格线和相应的标签。 我想在1(2,3,4 ……)和10之间以及10到100(20,30,40 ……)之间标记每个次要标记,并且还要在例如10和之间添加网格线。 20。 我在图表的轴属性中使用了Interval of 1作为标签,但它不起作用。

无法连接到VS2012中的localDB – “建立与SQL Server的连接时出现与网络相关或特定于实例的错误…”

这很奇怪,因为我能够通过SSMS 2008R2使用相同的连接字符串连接到localDB(“ Data Source=(LocalDB)\v11.0;Integrated Security=true ”) 只有C#代码无法连接,我尝试使用Connect Timeout=60增加登录时间,但没有运气。 我也尝试过指定数据库Initial Catalog=<databasename> 其中是我通过ssms在localdb上创建的。 关于为什么这不连接的任何指针?

使用.NET 4.5解压缩受密码保护的ZIP文件

Microsoft在System.IO.Compression命名空间中引入了.NET 4.5中ZIP文件处理的改进。 即ZipArchive和ZipFile类。 但是,我还没有看到过对密码保护文件使用本机.NET ZIP文件处理的方法。 有没有办法实现这个目标? (我知道有很好的第三方zip文件库,这不是问题。)

是否可以在.NET 4.0框架上使用TLS1.2发送HttpWebRequest

我的应用程序连接到Experian服务器,Experian将很快停止支持TLS 1.0和TLS 1.1 。 使用HTTPS所有连接必须使用TLS Version 1.2 。 我想对该问题进行一些研究,并看到在.NET 4.0 framework上使用TLS 1.2发送HttpWebRequest 如果没有,我可能需要在.NET 4.5上创建一个webservice服务并调用它的方法,如果有的话,我没有任何东西。 有人已经面临过这个问题吗?

在Windows Server 2012中启动更改

编辑:我原本以为这与.NET Framework 4.5有关。 原来它也适用于.NET Framework 4.0。 Windows Server 2012中的字符串处理方式发生了变化,我试图更好地理解它。 似乎StartsWith的行为已经改变。 使用.NET Framework 4.0和4.5可以重现该问题。 使用Windows 7上的.NET Framework 4.5,下面的程序打印“False,t”。 在Windows 2012 Server上,它会打印“True,t”。 internal class Program { private static void Main(string[] args) { string byteOrderMark = Encoding.UTF8.GetString(Encoding.UTF8.GetPreamble()); Console.WriteLine(“test”.StartsWith(byteOrderMark)); Console.WriteLine(“test”[0]); } } 换句话说,无论字符串内容如何,​​StartsWith(ByteOrderMark)都返回true。 如果您有使用以下方法尝试剥离字节顺序标记的代码,此代码将在Windows 7上正常工作,但将在Windows 2012上打印“est”。 internal class Program { private static void Main(string[] args) { string byteOrderMark = […]

.NET 4.5文件读取性能同步与异步

我们试图测量使用同步方法和异步读取一系列文件之间的性能。 期望在两者之间大约有相同的时间但是使用异步的结果大约慢了5.5倍。 这可能是由于管理线程的开销,但只是想了解您的意见。 也许我们只是在测量时间错误。 这些是正在测试的方法: static void ReadAllFile(string filename) { var content = File.ReadAllBytes(filename); } static async Task ReadAllFileAsync(string filename) { using (var file = File.OpenRead(filename)) { using (var ms = new MemoryStream()) { byte[] buff = new byte[file.Length]; await file.ReadAsync(buff, 0, (int)file.Length); } } } 这是运行它们并启动秒表的方法: static void Test(string name, Func gettask, int count) […]

等待基于任务的队列

我想知道是否存在ConcurrentQueue的实现/包装器,类似于BlockingCollection ,其中从集合中获取不会阻塞,而是异步并且将导致异步等待直到将项放入队列中。 我已经提出了自己的实现,但它似乎没有按预期执行。 我想知道我是否正在重塑已经存在的东西。 这是我的实现: public class MessageQueue { ConcurrentQueue queue = new ConcurrentQueue(); ConcurrentQueue<TaskCompletionSource> waitingQueue = new ConcurrentQueue<TaskCompletionSource>(); object queueSyncLock = new object(); public void Enqueue(T item) { queue.Enqueue(item); ProcessQueues(); } public async Task Dequeue() { TaskCompletionSource tcs = new TaskCompletionSource(); waitingQueue.Enqueue(tcs); ProcessQueues(); return tcs.Task.IsCompleted ? tcs.Task.Result : await tcs.Task; } private void ProcessQueues() […]

在sql数据库中查看表新记录

我在Windows应用程序中使用EF,我希望我的应用程序在某个表中插入新记录时执行某些任务“这些新记录将由使用相同数据库的网站插入” 我的问题是如何观看此表进行更改并在新记录到来时收到通知,并且在这种情况下EF可以帮助我吗? 更新:我使用了SqlDependency类并在db中使用了它 ALTER DATABASE UrDb SET ENABLE_BROKER 并且还在数据库http://screencast.com/t/vrOjJbA1y中创建了一个服务和一个队列,但我从未收到来自我的Windows应用程序的通知。 此外,当我在sql server中打开队列时,它总是空的http://screencast.com/t/05UPDIwC8ck接缝有错误但我不知道。

将System.Net.Mail.MailMessage作为.NET 4.5 beta版的MemoryStream

因此,下面的代码用于在.NET 4中工作以将System.Net.Mail.MailMessage对象作为MemoryStream获取,但是随着.NET 4.5 beta的发布,发生了运行时exception。 Assembly assembly = typeof(SmtpClient).Assembly; Type mailWriterType = assembly.GetType(“System.Net.Mail.MailWriter”); using (MemoryStream stream = new MemoryStream()) { ConstructorInfo mailWriterContructor = mailWriterType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new[] { typeof(Stream) }, null); object mailWriter = mailWriterContructor.Invoke(new object[] { stream }); MethodInfo sendMethod = typeof(MailMessage).GetMethod(“Send”, BindingFlags.Instance | BindingFlags.NonPublic); sendMethod.Invoke(message, BindingFlags.Instance | BindingFlags.NonPublic, null, new[] { mailWriter, true […]

等待FormClosing事件中的异步函数

我遇到了一个问题,我无法等待FormClosing事件中的异步函数,这将决定表单关闭是否应该继续。 我创建了一个简单的示例,如果您在未保存的情况下关闭,则会提示您保存未保存的更改(非常类似于记事本或Microsoft Word)。 我遇到的问题是,当我等待异步保存function时,它会在保存function完成之前关闭表单,然后在完成后返回结束function并尝试继续。 我唯一的解决方案是在调用SaveAsync之前取消关闭事件,然后如果保存成功,它将调用form.Close()函数。 我希望有一种更清洁的方式来处理这种情况。 要复制方案,请创建一个带有文本框(txtValue),复选框(cbFail)和按钮(btnSave)的表单。 这是表单的代码。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace TestZ { public partial class Form1 : Form { string cleanValue = “”; public Form1() { InitializeComponent(); } public bool HasChanges() { return (txtValue.Text != cleanValue); } public […]