获得excel应用程序进程ID

我正在用c#创建一个excel应用程序。 由于我将紧急维护excel文件,我想保持其处理程序打开。 我想保留excel进程ID,以便在系统崩溃时能够终止它。 如何在创建Excel时获取Excel Pid?

如何正确地提供PDF文件

我使用的是.NET 3.5 ASP.NET。 目前,我的网站以下列方式提供PDF文件: context.Response.WriteFile(@”c:\blah\blah.pdf”); 这很好用。 但是,我想通过context.Response.Write(char [], int, int)方法来提供它。 所以我尝试通过发送文件 byte [] byteContent = File.ReadAllBytes(ReportPath); ASCIIEncoding encoding = new ASCIIEncoding(); char[] charContent = encoding.GetChars(byteContent); context.Response.Write(charContent, 0, charContent.Length); 这没用(例如浏览器的PDF插件抱怨文件已损坏)。 所以我尝试了Unicode方法: byte [] byteContent = File.ReadAllBytes(ReportPath); UnicodeEncoding encoding = new UnicodeEncoding(); char[] charContent = encoding.GetChars(byteContent); context.Response.Write(charContent, 0, charContent.Length); 这也没用。 我错过了什么?

两个字符串C#之间的区别

可以说我有两个字符串: string s1 = “hello”; string s2 = “hello world”; 有没有办法让我得到一个string s3 = ” world”; 这两个字符串之间的区别是什么? 编辑: 在这种情况下,差异将始终存在 s1 = “abc” s2 = “abcd ads as “

StorageFile NON Metro应用程序中的异步使用

我正在尝试在我的类库中创建一个StorageFile实例… var localFolder = ApplicationData.Current.LocalFolder; StorageFile destinationFile = await localFolder.CreateFileAsync(destination, CreationCollisionOption.GenerateUniqueName); VS11没有建立说:’await’要求’Windows.Foundation.IAsyncOperation’类型具有合适的GetAwaiter方法。 你错过了’系统’的使用指令吗? 显然我使用.net 4.5作为目标,我正在引用Windows程序集…不确定为什么这个代码在MetroStyle中工作但不在类库中构建…如何在类库中创建Storagefile的实例? ?? 在这个阶段,如果以异步方式创建文件并不重要… 请告诉我你的想法…… Stelio

AuthenticationResult.IsSuccessful开始为谷歌返回false

今天,在我的实际网站上没有任何更改,使用Google外部登录提供程序登录停止了工作。 这只发生在有谷歌登录的用户,其他提供商都没问题。 这也只发生在实时网站上,我的dev机器运行相同代码的调试版本就可以了。 我的代码类似于示例MVC应用程序: public ActionResult ExternalLoginCallback( string returnUrl ) { … AuthenticationResult result = OAuthWebSecurity.VerifyAuthentication( Url.Action( “ExternalLoginCallback”, new { ReturnUrl = returnUrl } ) ); if( !result.IsSuccessful ) { return RedirectToAction( “ExternalLoginFailure” ); } } 我看了一下空的result.error。 有什么变化我需要注意吗? 我可以在1月4日看到类似的问题。 我想这与我的实现有关,而不是谷歌范围的问题,因为我仍然可以登录使用我的谷歌开放ID的SO。 我正在使用Log4Net并接收DotNetOpenAuth日志,但是没有错误,所以它与此答案不同。 我尝试从4.3.0.13117升级到最新的Nuget(4.3.4.13329),但这没有效果。 我似乎也无法在存储库中找到4.3.4.13329源代码的标记。 我将尝试下载并构建4.3.0.13117以查看是否可以找到原因。 唯一的问题是,这可以在我的本地计算机上进行良好的测试,我不确定我是否想在现场网站上安装调试DLL。

如何在C#中更改文件创建时间?

我想知道如何在C#中更改文件创建时间?

C#Webclient Stream将文件从FTP下载到本地存储

我一直在通过.NET命名空间提供的WebClient对象从FTP服务器下载文件,然后通过BinaryWriter将字节写入实际文件。 一切都很好。 但是,现在,文件的大小已经大大增加,我担心内存限制,所以我想创建一个下载流,创建一个文件流,并逐行读取下载并写入文件。 我很紧张,因为我找不到一个很好的例子。 这是我的最终结果: var request = new WebClient(); // Omitted code to add credentials, etc.. var downloadStream = new StreamReader(request.OpenRead(ftpFilePathUri.ToString())); using (var writeStream = File.Open(toLocation, FileMode.CreateNew)) { using (var writer = new StreamWriter(writeStream)) { while (!downloadStream.EndOfStream) { writer.Write(downloadStream.ReadLine()); } } } 我是否会采用这种不正确/更好的方式/等等?

SQL连接公共IP,命名实例和端口号

我在c#中创建连接字符串时遇到了困难,该连接字符串将使用公共IP,命名实例和端口号(1433除外)连接到远程SQL服务器。 谁知道怎么做?

如何在WCF服务和主机应用程序之间进行通信?

我通过本教程创建了一个WCF服务。 这很好用,没问题。 现在我在托管应用程序中托管服务。 但与此同时,我希望将客户端的输入用于主机应用程序中的服务。 我不需要客户端和服务之间的双工通信。 我只需要服务和主机通信之间的通信。 处理这个问题的最佳方法是什么?

C#6改进了重载分辨率 – 澄清?

在C#6的所有新function中,最神秘的function(对我而言)是“改进的重载分辨率” 。 也许是因为我无法找到有关它的相关信息/示例/解释。 剩下的两个未讨论的function是支持定义自定义Add扩展方法以帮助收集初始化器, 以及一些次要但改进的重载决策 看着roslyn维基 重载决策有许多小的改进,这可能会导致更多的东西按照你期望的方式工作。 这些改进都与“更好”有关 – 编译器决定哪两个重载对于给定参数更好。 所以我问: 问题 : 改进的重载分辨率究竟如何在C#6中发挥作用? 它与C#5的不同之处(示例?文档?)