串行调用异步方法

我有以下(简化)异步方法: void Transform(X x, Action resultCallback) {…} 我想要做的是将X列表转换为Y列表。 问题是即使Transform方法是异步的,它也必须被串行调用(即我必须在使用下一个值调用它之前等待回调)。 有没有办法优雅地做到这一点? (我在.Net 4.0上) 我猜可能有一些方法可以继续传递…… 更新我忘了指定我不想阻止调用(GUI)线程。

如何在WebAPI Web服务中获取可用方法列表?

我正在构建一个小型测试工具,它应该为用户提供Web服务列表(使用WebAPI构建)。 用户应该能够选择要测试的服务。 我正在使用 HttpClient client = new HttpClient(); client.BaseAddress = new Uri(“http://’localhost’:51062/”); // Add an Accept header for JSON format. client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue(“application/json”)); 我正在寻找类似的东西 client.GetAllWebServices() 这将返回用户可以看到的方法列表。 意思是,他在控制器上开发并想要测试的方法。

app.config单个键的多个值

是否有可能像这样的app.config文件: … 我的意思是,我想在配置文件中有一个键,它返回一个值列表。如何做? 认为这很容易,但我找不到任何例子 UPD:也许我应该用分号分隔多个值,然后将它们分开?..但我认为这不是一个好主意……

拒绝令牌请求时自定义OWIN / OAuth HTTP状态代码

我已经派生了OAuthAuthorizationServerProvider以validation客户端和资源所有者。 当我validation资源所有者时,我发现他们的凭据无效,我调用context.Rejected() , HTTP响应带有HTTP / 400错误请求状态代码,而我希望HTTP / 401未经授权 。 如何自定义OAuthAuthorizationServerProvider的响应HTTP状态代码?

如何在运行时动态突出显示或更改标签中某些单词的颜色?

我有一个包含一些文字的标签,我想要突出显示或更改标签文本中某些单词的颜色,而不是所有单词。 它必须是动态的。 有什么建议? 它适用于带有ASP.NET的c#,位于sharepoint中的webpart中的用户控件中

从没有COM的非托管C ++应用程序调用C#dll

有没有办法在没有COM使用的情况下从c ++非托管应用程序调用c#dll?

如何使用WCF服务生成XML输出?

我已经设置了以下界面。 [ServiceContract] public interface IService1 { [OperationContract] String Ping(); } 其实施如下。 public class Service1 : IService1 { public string Ping(){ return “Pong”; } } 根据VS中的测试应用程序,它在调用时正常工作。 我的问题是当我输入http:// localhost:12345 / Service1.svc (或者可能是Service1.svc?Ping或Service.svc / Ping )时,我希望文本显示在屏幕上。 它是完全关闭还是我吠叫正确的树? 当然,“ Pong ”最终将成为XML结构。 编辑 下面的@carlosfigueira回复中提供的设置为解决方案的建议提供了一个很好的结构,但不幸的是,当我使用F5运行时,我的机器上会出现错误消息。 似乎元数据是必需的,端点也是如此。

WndProc:如何在窗体最小化时获取窗口消息

要与某个服务进行通信,我必须覆盖WindProc 。 并接收窗口消息。 但是,当表单最小化时,我不再收到任何消息。 我知道它必须是那样的,但有没有解决方法呢? 我不希望有一个永远敞开的隐藏forms……

将远程映像保存到隔离存储

我尝试使用此代码下载图像: void downloadImage(){ WebClient client = new WebClient(); client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted); client.DownloadStringAsync(new Uri(“http://mysite/image.png”)); } void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { //how get stream of image?? PicToIsoStore(stream) } private void PicToIsoStore(Stream pic) { using (var isoStore = IsolatedStorageFile.GetUserStoreForApplication()) { var bi = new BitmapImage(); bi.SetSource(pic); var wb = new WriteableBitmap(bi); using (var isoFileStream = isoStore.CreateFile(“somepic.jpg”)) […]

为什么接口不起作用,而抽象类却使用generics类约束?

下面的代码显示了一个带有类型约束的通用类( Pub )。 该类有一个可以引发的事件,允许我们向订阅者传递消息。 约束是消息必须实现IMsg (或者当它是抽象类时从IMsginheritance)。 Pub还提供了一个Subscribe方法,当且仅当对象实现了IHandler ,才允许对象订阅notify事件。 使用.NET 4,下面的代码显示baseImplementer.NotifyEventHandler上的错误,指出: “No overload for ‘IHandler.NotifyEventHandler(IMsg)’ matches delegate ‘System.Action'” 问题:(使用更新的订阅方法) 一旦我将`IMsg`更改为抽象类而不是接口,为什么错误会消失? public interface IMsg { } // Doesn’t work //public abstract class IMsg { } // Does work public class Msg : IMsg { } public class Pub where T : IMsg { public event Action notify; […]