小编Ian*_*Ian的帖子

使用TFS SDK从TFS获取所有文件夹

我正在创建一个TFS工具,它将从TFS服务器获取"变更集信息".

现在,我想提供一个"TFS浏览器",以便用户可以浏览他想从中获取信息的"分支/文件夹".

我正在使用TreeView控件和GetItems函数从TFS获取项目的路径:

private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e)
{
    e.Node.Nodes.RemoveAt(0);
    RecursionType recursion = RecursionType.OneLevel;
    Item[] items = null;

    // Get the latest version of the information for the items.
    ItemSet itemSet = sourceControl.GetItems(e.Node.Tag.ToString(), recursion);
    items = itemSet.Items;

    foreach (Item item in items)
    {
        if (item.ServerItem == e.Node.Tag.ToString()) //Skip self
            continue;

        string filename = Path.GetFileName(item.ServerItem);

        if (Path.GetExtension(filename) == "")
        {
            TreeNode node = new TreeNode(filename, new TreeNode[] { new TreeNode() });
            node.Tag = item.ServerItem;
            e.Node.Nodes.Add(node);
        }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# treeview iostream tfs-sdk

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

自动检测连接到网络的新计算机

有一种优雅的方法可以让程序检测连接到网络的新计算机吗?

我希望我的程序能够"自动感知"在网络上连接的新计算机(它们位于同一网络上).就像连接到计算机的USB设备一样.

我现在正在做的是不时保存网络中所有计算机的列表.另一种方法是在子网上PING所有可用的IP.

还有其他优雅的方法吗?

谢谢!

networking

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

设计模式视频讲座

你能推荐一个好的设计模式视频讲座吗?类似麻省理工学院开放课件中的内容.

如果讲座可以免费访问,这是最好的.

design-patterns

5
推荐指数
0
解决办法
4760
查看次数

在本地化系统上解析DateTime

我们有一个生成报告的Web应用程序.数据来自数据库.

当我们在本地化系统上运行Web应用程序时,它会爆炸.我们在DateTime.Parse(dateString)上追踪了这个问题; 呼叫.

存储在数据库中的日期在某种程度上取决于计算机的区域设置.

在英语系统中,日期存储为MM/DD/YYYY(06/25/2009),这是完全正常的.

在俄罗斯系统上,日期存储为MM.DD.YYYY(06.25.2009).这很奇怪,因为俄罗斯系统中短日期格式的默认设置(我检查过)是dd.MM.yyyyy ......所以它应该是25.06.2009.我不明白为什么它接受了默认的分隔符(.)而不是默认的日期格式.

那么无论如何,我如何在本地化系统上解析日期字符串?如果我使用俄罗斯文化信息,它仍会抛出一个错误,因为它期待dd.MM.yyyyy.

谢谢!

.net c# datetime

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

为什么我的私人可以访问?

我有以下代码:

public class PersonInitializer
{
    private Person _person;

    public static Person LoadFromFile(string path)
    {
        PersonInitializer x = new PersonInitializer();

        Person p = x._person; //Why am I accessible?

        return x.LoadFromFile(); //Sure.

    }

    public Person LoadFromFile(string path)
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

为什么_ 即使它person可以访问?我该怎样做才能"保护"_person?xprivate

.net c# oop

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

在内部(在同一个程序集中)向ReadOnlyCollection <T>添加项目的最佳方法?

我有以下课程:

public class Foo
{
     public List<Bar> Bars {get; internal set;}
}
Run Code Online (Sandbox Code Playgroud)

现在我想制作Bars一个不能公开改变ReadOnlyCollection的内容Bars:

public class Foo
{
     public ReadOnlyCollection<Bar> Bars {get; internal set;}
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我在同一个程序集中有一个需要添加项目的类Bars,那么最好的方法是什么?

这就是我现在这样做的方式:

public class FooHelper
{
   public FooHelper()
   {
      Foo foo = new Foo();
      //Code to modify the collection
      List<Bar> bars = foo.Bars.ToList<Bar>();
      bars.Add(new Bar("BAR BAR BAR"));
      foo.Bars = bars.AsReadOnly();
   }
}
Run Code Online (Sandbox Code Playgroud)

我意识到如果我有这样的Private List<Bar>in 会更容易Foo:

public class Foo
{
     private List<Bar> _bars;
     public ReadOnlyCollection<Bar> Bars …
Run Code Online (Sandbox Code Playgroud)

c# collections design-patterns

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

Activity Lifecycle:为什么设置为"Paused"而不是"Stopped"

为了让我在假期忙碌,我决定学习Android开发.

所以我正在关注一个Activity的生命周期的教程.在链接文章中,它说:

在正常的应用程序使用期间,前台活动有时会受到导致活动暂停的其他可视组件的阻碍.例如,当打开半透明活动(例如对话框样式中的活动)时,先前的活动会暂停.只要活动仍然部分可见,但目前不是焦点活动,它仍然暂停.

但是,一旦活动完全被阻挡且不可见,它就会停止(这将在下一课中讨论).

我下载了示例应用程序.示例应用程序有3个活动,每个活动都有按钮,用于启动其他活动Intent.当我点击"开始B"时,我预计Activity A状态应该是"停止",因为现在它Activity B的布局完全受阻.但是,它被设置为"已暂停".

Activity A状态变为Stopped 的唯一时间是我从Activity B布局中单击"Start C" .

为什么会这样?是因为新版Android上出现了一些优化,还是我误解了这篇文章?

截图

android android-lifecycle

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

建模安装逻辑/流程的最佳方式

我们目前正在为我们的产品设计安装程序.我们目前正处于设计阶段,我想知道在建模安装逻辑或流程时使用的最佳图表(UML与否)是什么?

目前,我们正在使用good'ol流程图.

谢谢!

diagram installation uml

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

从DTF访问InstallShield"支持文件"(托管自定义操作)

我有一堆.SQL脚本放在InstallShield的"支持文件"视图中.

我想在我的自定义操作中访问这些SQL脚本(通过DTF).我怎样才能做到这一点?

installshield custom-action wix dtf

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

获取注册表项值的最简单方法

是否可以在不解析注册表路径的情况下获取"注册表项"的值?

我实际上正在寻找的是一个单线程命令来获取一个键的值,如:

object value = Registry.GetValue("path");
Run Code Online (Sandbox Code Playgroud)

例如,"path"是:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\Install

Install关键的其实是价值.

目前,我这样做:

object value = Registry.GetValue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full", "Install", null);
Run Code Online (Sandbox Code Playgroud)

那么问题是,是否可以在不解析路径的情况下获取注册表项的值?

谢谢!

.net c# registry

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