public class FooHandler : HttpTaskAsyncHandler
{
public override async Task ProcessRequestAsync(HttpContext context)
{
return await new AdRequest().ProcessRequest();
// getting error here. "Return type of async type is void"
}
}
public class FooRequest
{
public async Task<String> ProcessRequest()
{
//return await "foo"; obviously nothing to wait here
}
}
Run Code Online (Sandbox Code Playgroud)
我想创建一个异步处理程序,只想返回一个字符串.我怎样才能使这个工作?是否有使用Async方法和任务的简明参考?
现在是 2019 年,我们有一个使用大型机作为数据存储和交易的银行项目。
我们正在使用 DTO(Commarea,纯 c# 类),它被转换为纯字符串(这是大型机的工作方式),然后发送到大型机。
在将类转换为字符串表示时,我们使用了几种字符串操作,例如子字符串、向左填充、向右填充、修剪等。
可以想象,这会导致多次字符串分配,从而导致垃圾收集。它通常在第 0 代,但仍然如此。
特别是像Decimalwhich is a Pack typein mainframe 这样适合 8 个字节的类型会创建多个字符串。
我尝试使用ReadonlySpan<char>例如子字符串。参见示例。
不过,也有类似的操作PadRight,PadLeft这是不缴费的,因为它是一个只读跨度。
更新: 澄清部分转换发生如下:
val.Trim().Substring(5).PadRight(10);
Run Code Online (Sandbox Code Playgroud)
我知道这会创建 3 个字符串。我知道字符串是不可变的。我的问题是关于使用ReadonlySpanor进行上述操作Memory。
我不能只将 ReadonlySpan 用于子字符串,因为一旦我调用ToString方法,我就会失去好处。
我必须ToString一路打电话到最后。
是否有另一个结构支持子字符串后面的其他操作,我实际上可以将删除数据添加到内存中?
谢谢。
我在flex中有以下字典,id喜欢按值排序.找不到任何资源.
'1'=>2, '0' =>1, '3'=>4 ..
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?我如何按价值排序?
我有一个从msmq队列接收消息的方法.
我在msmq中有6个不同的队列,id就像一个接收消息的通用方法.这是工作,但我需要为每个队列编写6个方法.我想让它更通用.
public List<QueMessage> getMessagesFromObj1Queue()
{
List<QueMessage> messageList = new List<QueMessage>();
QueObj1 que = new QueObj1();
while (que.ReceiveAll().Count > 0)
{
varmessage = que.Receive(new TimeSpan(0, 1, 0));
messageList.Add(message);
}
return messageList;
}
Run Code Online (Sandbox Code Playgroud)
我有5个不同的对象,它只扩展了一个抽象类.下面的工作.
public List<QueMessage> getMessagesFromObj1Queue<T>(T que)
{
List<QueMessage> messageList = new List<QueMessage>();
while (que.ReceiveAll().Count > 0)
{
varmessage = que.Receive(new TimeSpan(0, 1, 0));
messageList.Add(message);
}
return messageList;
}
Run Code Online (Sandbox Code Playgroud)
以上不起作用
怎么解决这个问题?
我有一个具有大量IO操作的应用程序,例如文件复制,压缩和移动文件系统周围的文件,复制到备份服务器.
我将此程序构建为单线程.它运行2分钟.
我使用Parallel扩展并使用Task构建了该程序的另一个版本,它几乎在2分钟内运行.
换句话说,由于IO很大,我没有看到使用Parallels带来的性能提升.
如果我将应用程序部署到刀片服务器,我会得到相同的结果吗?
刀片服务器是否比我的工作站更快/更多地处理IO?
将Parallels与IO绑定应用程序一起使用没有任何好处吗?
我在使用的课程中有以下几行.
private static readonly LazyInit<TestClass> _instance = new LazyInit<TestClass>(() => new TestClass(), LazyInitMode.EnsureSingleExecution);
Run Code Online (Sandbox Code Playgroud)
有一天,我想要使.NET 4附带的所有新东西受益,安装它并彻底解决问题.
我的LazyInit不再工作了.所以我用Lazy <T>取代了每一次出现,但是呢
LazyInitMode.EnsureSingleExecution?
我以为那会是LazyThreadSafetyMode.ExecutionAndPublication.
private static Lazy<LookupService> s_instance = new Lazy<LookupService>(() => new LookupService(), LazyThreadSafetyMode.ExecutionAndPublication);
Run Code Online (Sandbox Code Playgroud)
这两个declerations是否相等?
string accessToken = GetAccessToken();
string accessKey = accessToken.Split('=')[1];
var client = new FacebookClient(accessKey);
dynamic me = client.Get("me");
Run Code Online (Sandbox Code Playgroud)
这是获取访问令牌的方法,它确实返回一个有效的访问令牌
private static string GetAccessToken()
{
// Create a request using a URL that can receive a post.
WebRequest request = WebRequest.Create("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=201193246663533&client_secret=secretkeyhere");
// Set the Method property of the request to POST.
request.Method = "POST";
// Create POST data and convert it to a byte array.
string postData = "This is a test that posts this string to a Web server.";
byte[] byteArray …Run Code Online (Sandbox Code Playgroud) 我想将WebApi用作数据访问的独立应用程序.
当我创建一个新的MVC 4项目时,它安装了一堆我对此目的不感兴趣的垃圾.
我应该删除视图,内容,脚本等.
或者你会为此目的推荐WCF吗?
另外,不同的浏览器返回不同的数据格式,例如Firefox返回XML,IE返回json.
我希望他们所有人都返回JSON.使用WCF如果配置了json,它们都返回返回JSON.如何强制webapi只返回所有浏览器的json?
有什么想法吗?
锦标赛是通过为无向完全图中的每条边指定方向而获得的有向图(有向图)。也就是说,它是一个有向图,其中每对顶点都由一条有向边连接。
数据结构是邻接矩阵。
什么是确定该图是否为锦标赛图的算法?
我有一个单独的Log4Net.config文件.我补充道
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]
Run Code Online (Sandbox Code Playgroud)
到AssemblyInfo.cs
当我使用调试模式运行应用程序时,lognet正在记录.当我将应用程序发布到IIS时,lognet不会记录任何内容.
我还有以下内容:
BasicConfigurator.Configure(); // in a method
private static readonly ILog _logger = LogManager.GetLogger(typeof(_Default)); // for the instance
Run Code Online (Sandbox Code Playgroud)
这是什么原因?
c# ×8
.net ×5
algorithm ×1
apache-flex ×1
asynchronous ×1
facebook ×1
generics ×1
graph ×1
io ×1
lazy-loading ×1
log4net ×1
logging ×1
sorting ×1
string ×1