小编Chr*_*ham的帖子

等到文件在.NET中解锁

在文件解锁并且可以读取和重命名之前,阻塞线程的最简单方法是什么?例如,.NET Framework中的某个地方是否存在WaitOnFile()?

我有一个服务,使用FileSystemWatcher查找要传输到FTP站点的文件,但文件创建事件在另一个进程写完文件之前触发.

理想的解决方案将有一个超时期限,因此线程在放弃之前不会永久挂起.

编辑:在尝试下面的一些解决方案后,我最终更改系统,以便所有文件写入Path.GetTempFileName(),然后执行File.Move()到最终位置.一旦FileSystemWatcher事件被触发,该文件就已经完成.

.net file .net-3.5

94
推荐指数
5
解决办法
7万
查看次数

获取lat/long对的街道地址

我已经看到可以从街道地址获取纬度和经度(地理编码,就像在Google Maps API中一样),但是当你知道纬度/长度已经是什么时,是否可以反过来获取街道地址?

该应用程序将是一个iPhone应用程序(以及该应用程序已经知道lat/long的原因),因此从Web服务到iPhone API的任何工作都可以.

iphone gis web-services geocoding street-address

22
推荐指数
3
解决办法
2万
查看次数

有没有Bug百科全书?

有没有人开发过软件错误的百科全书或维基,无论是错误类型(一个一个,缓冲区溢出等),还是只是着名的错误(Grace Hopper的飞蛾,Arianne火箭失败等)?

我认为,对于困难的情况,交叉引用的bug类型,示例和错误症状的百科全书将有助于程序员.特别是如果可以搜索错误如何表现自己(崩溃,输出错误,内存泄漏等).

debugging wiki reference

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

WPF:网格中的ScrollViewer

我有一个网格:

<Grid.RowDefinitions>
        <RowDefinition Height="100"/>
        <RowDefinition Height="*"/>
</Grid.RowDefinitions>
Run Code Online (Sandbox Code Playgroud)

第二行是scrollviewer:

    <ScrollViewer VerticalScrollBarVisibility="Auto" MinHeight="400" Grid.Row="1">
            <ItemsControl ItemsSource="{Binding SelectedUserControls}"/>
    </ScrollViewer>
Run Code Online (Sandbox Code Playgroud)

如果需要,我希望第二行使用滚动,但滚动是永远不可见的,如果项目控件比屏幕大,则为事件.

如何在需要时显示滚动?

c# wpf grid scrollviewer

13
推荐指数
1
解决办法
3万
查看次数

在iPhone OS中读取通话记录

我正在研究iPhone应用程序的可行性,并且在Apple的文档中找不到任何迹象表明iPhone应用程序可以读取手机的通话记录,特别是所谓的号码/地址簿条目,以及持续时间.

有谁知道这是否可能,以及如何?

注意:目的是消除用户自己执行此数据输入的需要.该应用程序用于记录与客户服务中心的交互.

iphone

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

测试对象是否为IEnumerable的最快方法是什么?

有没有快速的方法来确定object变量的内容是否支持IEnumerable?具体来说我使用XPathEvaluate()从System.Xml.XPath,它可以返回" 它可以包含一个bool,双,字符串,或一个IEnumerable的对象. "

所以执行后:

XDocument content = XDocument.Load("foo.xml");
object action = content.XPathEvaluate("/bar/baz/@quux");
// Do I now call action.ToString(), or foreach(var foo in action)?
Run Code Online (Sandbox Code Playgroud)

我可以随便找一下action.GetType().GetInterface(),但我想我会问是否有更快/更简单的方法.

c# .net-3.5

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

WPF Panel.Children与Panel.InternalChildren - 有什么区别?

根据MSDN - Panel.InternalChildren属性:

Panel派生的类 应该使用此属性而不是Children 属性来进行内部重写,例如MeasureCoreArrangeCore.


所以,这实际上是一个2部分的问题:

  1. 如果我创建了一个我自己的Panel FooPanel,它来自Panel,我似乎无法覆盖MeasureCoreArrangeCore.我不确定为什么那句话甚至存在.但是,我可以覆盖MeasureOverrideArrangeOverride.所以,我想知道我是否还需要使用InternalChildren这两种方法的属性.

  2. Children物业和InternalChildren物业之间的真正区别是什么?

wpf children panel measureoverride arrangeoverride

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

"前缀'x'未映射到命名空间"

我想在运行时使用加载DataTemplate XamlReader,但它抛出异常"前缀'x'不映射到命名空间."

这是我传递给的XML字符串XamlReader:

<xm:ResourceDictionary 
    xmlns:xm="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:do="clr-namespace:MyLibrary.DataObjects;assembly=MyLibrary.DataObjects"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
      <xm:DataTemplate DataType="{x:Type do:ValidationResponse}">
        <xm:StackPanel Orientation="Horizontal">
          <xm:Label>MessageID</xm:Label>
          <xm:TextBox Text="{Binding Path=MessageID}"/>
        </xm:StackPanel>
      </xm:DataTemplate>
</xm:ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)

这是读它的代码:

ResourceDictionary dictionary = XamlReader.Parse(myXamlString) as ResourceDictionary;
Run Code Online (Sandbox Code Playgroud)

这是有趣的部分,如果我添加x:Key="ValidationResponseTemplate"到DataTemplate它解析没有任何异常.但是,我无法保持这种方式,因为我无法通过程序自己的键来指定DataTemplate .xaml(在运行时获取模板之前它不会知道模板).

x命名空间中都属于程序自身的定义.xaml和XML的片段,我试图解析.

总体目标:能够提供新的DataTemplates,既可以在运行时更改显示的外观,也可以显示客户端在编译时不知道的XML数据.

c# wpf xaml .net-4.0

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

检查数值的精度和比例的有效方法是什么?

我正在编写一个例程,在将数据插入数据库之前对其进行验证,其中一个步骤是查看数值是否符合数字(x,y)SQL-Server类型的精度和比例.

我已经从SQL-Server获得了精度和规模,但是在C#中获得CLR值的精度和规模的最有效方法是什么,或者至少测试它是否适合给定的约束?

目前,我正在将CLR值转换为字符串,然后使用.IndexOf()查找小数点的位置.有更快的方法吗?

c# sql-server .net-3.5

6
推荐指数
2
解决办法
4178
查看次数

使用DNS作为URN解析器

我正在寻找或者建立一个URN(统一资源名称)解析器,它将返回给定URN的0或更多URI.

例如:urn:fooid:6e8bc430-9c3a-11d9-9669-0800200c9a66:foo可能会解决http://www.example.com/fooservice/6e8bc430-9c3a-11d9-9669-0800200c9a66/foo.该服务将了解fooid-style URN并知道如何从GUID 查找base-URL(http://www.example.com/fooservice/)并将冒号转换为斜杠以生成完整的URI.

我搜索过"URN解析器",但那里并没​​有多少.然后我发现 - 由于DNS是以可扩展和分布式的方式快速解析地址,并且因为它已被用于其他应用程序(请参见此处) - 可能它可用于执行基本URL查找部分.

这是否已经完成,是否只是使用传统数据库的实用替代方案?

dns urn

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