小编fin*_*fin的帖子

.Net编码标准在方法名称上使用前缀"Is"或"Has"

在创建返回布尔值的方法时,建议在" Is "或" Has "前加上前缀.我的感觉是这种做法更适合定义属性名称.

说,我们有一个类似下面的方法有一些逻辑:

bool IsActivePage()  
{  
 // Some logic to determine if the page is active...   
}
Run Code Online (Sandbox Code Playgroud)

是否更可取的方法是将方法重命名为GetActivePageStatus,然后创建一个返回该方法结果的布尔属性IsActivePage.

什么是.NET标准?所有意见将不胜感激?

.net c# coding-style

27
推荐指数
2
解决办法
8877
查看次数

12
推荐指数
2
解决办法
1万
查看次数

UI线程块

我创建了一个简单的WPF应用程序,并在默认窗口中添加了一个按钮.当我点击按钮时,会调用一个模拟的长工作方法(使用Thread.Sleep(15000)进行模拟).我试图使按钮异步执行,但是尽管有以下在线示例,按钮和整个窗口会立即锁定单击并保持不变,直到Thread.Sleep(...)结束.

任何想法为什么会这样?

这是代码:

private void button1_Click(object sender, RoutedEventArgs e)
{
   DoSomeAsyncWork();
}

private void DoSomeAsyncWork()
{
     System.Windows.Threading.Dispatcher.Run();
     Thread thread = new System.Threading.Thread(
         new System.Threading.ThreadStart(
          delegate()
          {
               Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() => Thread.Sleep(15000)));
          }
        ));
     thread.Start();
}
Run Code Online (Sandbox Code Playgroud)

wpf multithreading deadlock dispatcher

9
推荐指数
1
解决办法
9345
查看次数

如何使此异常处理代码遵循DRY原则?

我有一个特殊情况,我需要捕获异常并将对象返回给客户端而不是异常.我不能将异常处理逻辑放在更高级别,即在try子句中包装Foo.

最好用一些示例代码进行演示.异常处理逻辑掩盖了方法的意图,如果我有很多类似意图的方法,在Foo类中,我发现自己重复了大部分的catch逻辑.

在下面的代码中包含常见异常功能的最佳技术是什么?

public class Foo
{
     public Bar SomeMethodThatCanThrowExcepetion()
     {
          try
          {
              return new Bar().Execute();
          }
          catch(BazException ex)
          {
              WriteLogMessage(ex, Bar.ErrorCode);
              return new Bar() { ErrorMessage = ex.Message, ErrorCode = Bar.ErrorCode;}                  
          }
     }

     public Baz SomeMethodThatCanThrowExcepetion(SomeObject stuff)
     {
          try
          {
              return new Baz(stuff).Execute();
          }
          catch(BazException ex)
          {
              WriteLogMessage(ex, Baz.ErrorCode);
              return new Baz() { ErrorMessage = ex.Message, ErrorCode = Baz.ErrorCode;}                  
          }
     }
 } 
Run Code Online (Sandbox Code Playgroud)

.net c# design-patterns exception-handling

7
推荐指数
2
解决办法
328
查看次数

如何在Internet Explorer 64位中支持浏览器中显示PDF文件

使用64位版本的Internet Explorer时,Adobe似乎不支持在浏览器中显示PDF.单击pdf链接后,64位Internet Explorer将始终跨越新的Adobe窗口以显示pdf.32位Internet Explorer将显示嵌入浏览器本身的pdf.

在64位编译的WinForms .NET应用程序中使用WebBrowser控件时,我注意到了这个问题.我不相信在64位应用程序中使用32位WebBrowser控件是可能的,因此我正在寻找一些解决此问题的方法,即使它需要使用第三方插件.

任何建议将不胜感激.

谢谢.

c# browser internet-explorer adobe winforms

6
推荐指数
1
解决办法
3449
查看次数

是否可以导出(伪造)内存中 MemoryStream 文件的位置路径?

是否可以导出内存文件的位置路径?

我这样做的理由是基于我的 WinForms 应用程序以 Base64 编码的字符串格式检索的图像集合。我需要构建一些 HTML 并注入这些图像,以便它们可以在我的应用程序的 WebBrowser 控件中的嵌入页面上呈现。由于我们在这里谈论的是 HTML,因此我需要使用<IMG>标签来显示图像。这个元素需要接受一个“src”路径,这意味着我需要确定一种方法来导出每个内存图像的绝对/相对路径。

c# file-io memorystream filestream .net-3.5

5
推荐指数
1
解决办法
955
查看次数

将文件保存在临时目录中是否被认为是好的/可接受的做法?

我正在使用 C# 3.5 开发 WinForms 应用程序。我需要临时保存文件。为了论证起见,我们只是说,这是在用户查看应用程序上的特定选项卡时的一小段时间。用户离开该选项卡后,我可以随意删除该文件。每次用户导航到该选项卡(通常只执行一次)时,都会创建该文件(使用 GUID 名称)。

回答我的问题 - 将文件保存到临时目录是否被认为是好的做法?我将使用以下逻辑:

Path.GetTempFileName();
Run Code Online (Sandbox Code Playgroud)

我的意图是创建该文件并保留它而不删除它。我在这里假设 Windows 操作系统会根据剩余可用空间的百分比以一定的时间间隔清理临时目录。

注意:我曾考虑使用IsolatedStorage选项来创建文件,并在使用完毕后手动删除该文件,即当用户离开选项卡时。然而,事情进展得不太顺利,因为我需要获取文件的绝对或相对路径,并且在与isolatedStorage交互时这似乎不是一件直接/安全的苦差事。我的观点是,它的设计初衷就是不允许这样做。

c# filesystems file-io isolatedstorage

5
推荐指数
1
解决办法
2165
查看次数

如何跟踪使用WebClient调用的原始HTTP请求?

使用WebClient类时,以编程方式跟踪完整原始HTTP请求的最佳方法是什么?

c# webclient system.diagnostics

2
推荐指数
1
解决办法
3612
查看次数

.NET单击一次部署App.config

我正在使用VS2008 SP1 ClickOnce部署来部署应用程序.该应用程序引用一个Web服务,该服务在app.config文件中存储连接详细信息.例如,存储以下内容:

<client>
 <endpoint address="http://someservice.com/someservice" binding="customBinding" bindingConfiguration="ServiceSoapBinding" contract="AService.AService" name="AServicePort"  behaviorConfiguration="endPointBehavior"/>
</client>
Run Code Online (Sandbox Code Playgroud)

我需要能够在已部署的应用程序上验证此端点地址的值.我可以完全访问服务器上的每个已部署文件,但是我没有看到对任何app.config条目的引用.

app.config设置存储在已发布数据中的哪些位置以及如何访问它们?

亲切的问候,
F.

.net c# clickonce app-config

1
推荐指数
1
解决办法
3585
查看次数

Winforms主机Javascript内容

是否有可能举办和运行JavaScript高级,比如这个,直接在一个WinForms应用程序?为了超清楚,当我直接说,我的意思是我不能使用Web服务器来托管内容然后通过URL引用.我需要能够直接在表单上完成所有必需的功能.

javascript c# winforms

0
推荐指数
1
解决办法
871
查看次数

如何以纯文本格式显示当前月份?

关于如何以纯文本形式快速将当前月份的日历打印到剪贴板或 Windows 环境中的命令,有什么建议吗?在这里要明确的是,我希望看到完整打印的月份,类似于单击 Windows 任务栏中的时钟时看到的内容。我正在考虑使用轻量级 PowerShell 脚本,或者可能有一些其他预打包的 Windows 应用程序功能可以让我轻松地完成此操作。

windows powershell keyboard-shortcuts plaintext

0
推荐指数
1
解决办法
4668
查看次数