小编Vac*_*ano的帖子

我在哪里可以找到WSDL.exe?

我有Visual Studio 2010 Ulitmate(使用MSDN Premium),但我似乎无法找到此文件.

我已经尝试安装Visual Studio SDK但我似乎无法找到该文件.

我查了一下:

  • C:\ WINDOWS\Microsoft.NET \框架\ v3.5版本
  • C:\ WINDOWS\Microsoft.NET \框架\ v4.0.30319
  • C:\ Program Files(x86)\ Microsoft Visual Studio 10.0\SDK\v3.5

但我似乎无法找到它.

(如果您想知道,我需要它来执行这些步骤.)

sdk visual-studio-2010 wsdl.exe visual-studio-sdk

39
推荐指数
2
解决办法
8万
查看次数

将字符串格式化为列

有一种很酷的方法可以采取这样的方式:

Customer Name - City, State - ID
Bob Whiley - Howesville, TN - 322
Marley Winchester - Old Towne, CA - 5653

并将其格式化为这样的:

Customer Name     - City,       State - ID
Bob Whiley        - Howesville, TN    - 322
Marley Winchester - Old Towne,  CA    - 5653

使用字符串格式命令?

如果一个人很长,我不会太沮丧.例如,我可以这样做:

Customer Name     - City,       State - ID
Bob Whiley        - Howesville, TN    - 322
Marley Winchester - Old Towne,  CA    - 5653
Super Town person - Long Town Name, WA- 45648 

提供一些背景信息.我有一个下拉框,显示与此非常相似的信息.现在我在下拉列表中创建项目的代码如下所示: …

c# string string-formatting

38
推荐指数
2
解决办法
5万
查看次数

AppData\Local/Access的环境变量下载的自定义程序集

我正在尝试设置我的TFS2010 Build,我想访问通过"自定义程序集的版本控制路径"下载的文件.

据我所知,这些文件被下载到:

C:\User\<Build User>\AppData\Local\BuildAgent\<Built Agent Number>

我可以通过上面的路径直接访问该文件夹,但如果有一个环境变量(或者我可以在构建中使用的东西)间接访问该文件夹,那将会很好.

或者......有更好的方法来获取这些文件吗?(每次运行构建时,我都会在其中放置一个版本文件).

tfsbuild windows-7 windows-server-2008-r2 tfs2010

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

Dispose vs Dispose(bool)

我很困惑处置.我正在尝试让我的代码正确处理资源.所以我一直在将我的类设置为IDisposable(使用Dispose方法),确保调用Dispose方法.

但是现在FXCop告诉我很多关于Disposing = false和调用Dispose(false)的东西.

我没有看到一个带有bool的Dispose方法.我需要制作一个吗?如果是这样,为什么?为什么不在处理时调用一个方法呢?

我在这里看到了一些代码:http://msdn.microsoft.com/en-us/library/ms244737.aspx,它展示了如何制作一个带有bool的Disposing方法.它表示它适用于本地和管理资源. 但我认为处理的全部内容仅适用于非管理资源.

此外,FXCop抱怨的路线是这样的:

    ~OwnerDrawnPanel()
    {
        _font.Dispose();
    }
Run Code Online (Sandbox Code Playgroud)

它说:

CA1063:Microsoft.Design:修改'OwnerDrawnPanel .~ OwnerDrawnPanel()',以便它调用Dispose(false)然后返回.

但是Font上没有Dispose(bool)(我能找到).

把它们加起来:

为什么我需要Dispose(bool)?如果我这样做,为什么Font没有呢?因为它没有它,为什么FXCop要求我使用它?


感谢所有的好答案.我想我现在明白了.这是

答案就像我看到的那样:

处置"非管理"资源分为两类:

  1. 包含在托管类(即Bitmap,Font等)中的资源,但仍需要调用Dispose来正确清理它们.
  2. 您已分配的资源,即本机资源的表示(即需要发布的设备上下文)

Dispose(bool)用于表示两者之间的区别:

  1. 当直接在您的对象上调用Dispose时,您希望释放两种"非托管"资源.
  2. 当您的对象用于垃圾收集时,您不必担心第一种资源.垃圾收集器在清理它们时会处理它们.您只需要担心已分配的真实本机资源(如果有).

c# dispose

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

.Net规则引擎

我正在研究一个可以从规则引擎中受益的项目.我只考虑使用Windows工作流引擎,但我想知道还有什么.

我的项目花费了大部分预算.所以我需要建议价格适中(<$ 1,000范围内).

我看到了InRule,但他们没有发布价格(我可以看到).所以我猜它是其中之一"如果你不得不问你买不起它"的那种产品.

我看到这篇文章:在.NET中寻找简单的规则引擎库

但它很老,专注于开源.

那么,那里有任何价格适中的.Net规则引擎吗?

.net c# rule-engine

36
推荐指数
0
解决办法
4万
查看次数

以不同的用户身份运行代码

有没有办法告诉我的代码以不同的用户身份运行?

我通过PInvoke调用NetUserSetInfo,我需要将其称为不同的用户.有没有办法做到这一点?

c# impersonation windows-authentication

35
推荐指数
3
解决办法
8万
查看次数

.net 4.5与.net 4.0并行工作吗?

我有兴趣安装.NET 4.5.

但我听说这是一个就地升级.

由于我公司的用户使用Windows XP.我无法发布任何使用.NET 4.5的客户端应用程序.

我知道我可以在编码时定位.net 4.0,但是,如果我安装了.net 4.5,那么在我的机器上工作的风险是否会在Windows XP机器上运行(只有.net 4.0)?

(顺便说一句,我看了一下,但没有看到这个问题.如果有问题,请指出我,我会尝试删除这个.)

.net .net-4.0 .net-4.5

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

用C#调用json

我正在尝试使用C#进行json调用.我开始创建一个电话,但它不起作用:

public bool SendAnSMSMessage(string message)
{
    HttpWebRequest request = (HttpWebRequest)
                             WebRequest.Create("http://api.pennysms.com/jsonrpc");
    request.Method = "POST";
    request.ContentType = "application/json";

    string json = "{ \"method\": \"send\", "+
                  "  \"params\": [ "+
                  "             \"IPutAGuidHere\", "+
                  "             \"msg@MyCompany.com\", "+
                  "             \"MyTenDigitNumberWasHere\", "+
                  "             \""+message+"\" " +
                  "             ] "+
                  "}";

    StreamWriter writer = new StreamWriter(request.GetRequestStream());
    writer.Write(json);
    writer.Close();

    return true;
}
Run Code Online (Sandbox Code Playgroud)

任何关于如何使这项工作的建议将不胜感激.

c# json httpwebrequest

34
推荐指数
3
解决办法
12万
查看次数

WPF - FindName不应该返回null

FindName对我来说是坏的:(

如果你是这方面的专家,我会很乐意帮助你.

我正在寻找的对象就在那里.我有证据.

这是场景:

ToggleButton button = (ToggleButton)sender;
Popup popup = (Popup)button.FindName("popSelectIteration");
Run Code Online (Sandbox Code Playgroud)

popup是null但不总是.只是有时候.但即使它被设置为null,我正在寻找的孩子也在那里.

当它为null时我给了一个断点并抓住了这两个截图.

FindName为"popSelectIteration"返回null的位置:

alt text http://img175.imageshack.us/img175/2055/popupisnull.png

但如果你深入了解手表,就会发现孩子在那里:

替代文字http://img708.imageshack.us/img708/8757/watchwithpopupnull.png

那我错过了什么?为什么FindName找不到它?从屏幕截图中可以看出,这不是计时问题(FindName监视为空但直接路径很好).

有没有更好的方法来找到一个控件?

旁注:如果您在XAML中对有问题的切换按钮感兴趣,可以在这个问题中找到它:WPF - FrameworkElement - 枚举所有后代?.


更新:我做了一些挖掘,看看为什么这会失败一段时间,有时却失败了.我有一个调用的动画NameScope.SetNameScope((DependencyObject)form, new NameScope());(这里是完整的方法代码).在该调用之后,FindName开始失败.

我真的不明白这个电话.我想我复制并粘贴了代码.无论如何,我评论了它.但我很想知道为什么会失败.

c# wpf findname

33
推荐指数
4
解决办法
3万
查看次数

NuGet把dll放在哪里?

我正在尝试解决NuGet的Source Control限制.

为此,我需要更多地了解NuGet的工作原理.让我们举一个简单的例子.假设我有一个项目,我将AutoMapper添加到它.当我添加它应该放在哪里的dll?

我问,因为它似乎不一致.有时引用是在寻找"Packages"文件夹的dll:

NuGet使用包路径

有时它正在查看Debug构建输出文件夹:

NuGet使用调试路径

但在这两种情况下,packages.config文件中的AutoMapper行都是相同的:

第一个例子:

<?xml version="1.0" encoding="utf-8"?>
<packages>  
  <package id="AutoMapper" version="1.1.0.118" />
  <package id="CommonServiceLocator" version="1.0" />
  <package id="Unity" version="2.1.505.0" />
</packages>
Run Code Online (Sandbox Code Playgroud)

第二个例子:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="NSubstitute" version="1.1.0.0" />
  <package id="AutoMapper" version="1.1.0.118" />
  <package id="CommonServiceLocator" version="1.0" />
  <package id="Unity" version="2.1.505.0" />
</packages>
Run Code Online (Sandbox Code Playgroud)

那么控制它建立引用的位置是什么?我如何才能使用包位置?(当它使用Debug输出文件夹时,如果您为"Release"编译,则这些引用会失败.)

沮丧的注意事项:我必须承认,我发现NuGet是一个很酷的主意,但除了简单的情况之外没有做好任何准备.(我正在考虑回到我的所有dll中都有一个lib文件夹.)

我不禁想知道我是否遗漏了一些东西,因为NuGet的广泛采用.必须有一些方法来完成这项工作......

.net reference visual-studio-2010 visual-studio nuget

33
推荐指数
2
解决办法
4万
查看次数