这是一个简单的问题,但如果可能的话非常有帮助。
抱歉标题我没有找到一个创造性的方式来问这个 kkkk
我喜欢 chorme 网络控制台,它非常适合查看我真正从后端发送的内容,但调试器不是那么好(在我看来)......所以我使用 vsCode Chrome Debug 扩展进行调试,并且还想要看网络...
这个问题可以总结为2张图片......
我要这个:
有了这个:
有可能吗?
谢谢!
假设我有一个控制器,它具有通往某种角色的路由和用于其他角色的其他路由器。我想让代码更清晰地将这些路由分成部分类。我知道我能做到。
但我想知道我是否可以这样做:
[Authorize(Roles = "Admin")]
[MyLogger]
public partial class TheController{
// Admin routes
}
Run Code Online (Sandbox Code Playgroud)
和
[Authorize(Roles = "OtherRole")]
public partial class TheController{
// Other routes that require auth
}
Run Code Online (Sandbox Code Playgroud)
和
[AllowAnonymous]
public partial class TheController{
// public routes
}
Run Code Online (Sandbox Code Playgroud)
每个分部类内的路由仅获取该分部类的属性。
是否可以?
在代码审查自己的工作时,我发现了一段非常有趣的代码,我可以发誓它会导致死锁,但我已经用多个线程对其进行了多次测试,但没有得到任何结果。
这让我很困惑,所以我决定在这里问。
所以假设 LOCK 不会锁定同一个线程,但我想确认一下。
跟随一段代码
public class SplitService : ISplitService
{
private IRecordService recordService;
public SplitService(IRecordService recordService)
{
this.recordService = recordService;
}
private ConcurrentQueue<Batch> _batches = new ConcurrentQueue<Batch>();
public void Feed(Something r)
{
lock (this.recordService)
{
if (!this.recordService.CanAppend(r))
{
Flush();
}
this.recordService.Append(r);
}
}
public void Flush()
{
lock (this.recordService)
{
if (!this.recordService.Any()) return;
var record = this.recordService.GetBatch();
_batches.Enqueue(record);
this.recordService.Clean();
}
}
public IEnumerable<Batch> Get()
{
while (_batches.Any())
{
if (_batches.TryDequeue(out Batch batch))
{
yield return batch;
}
} …Run Code Online (Sandbox Code Playgroud)