RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-266480

Snuppi's questions

Martin Hope
Snuppi
Asked: 2020-07-26 23:34:25 +0000 UTC

IdentityServer4 的必要性问题

  • 0

我最近开始尝试找出 IdentityServer。碰巧我参与了几个项目,但几乎总是已经配置了 IdentityServer。决定在家自己解决。

登录以了解诸如oauth 2.0和openId 之类的信息。

Oauth 2.0是一种协议,它允许我们的应用程序从其他应用程序(facebook、twiter、vk 等)接收令牌,同时无需传递密码并登录到我们的应用程序

OpenId - 允许在其他应用程序中重复使用相同的令牌,而无需重新输入密码。

也就是说,其实需要IdentityServer4来简单的登录第三方应用,但是在我之前遇到的所有项目中,IdentityServer4都是用来简单的在当前应用中发光的,没有收到任何第三方的token。这是什么意思?也许我不明白什么?所有应用程序都是用 asp.net 核心编写的。尽管授权涉及的项目是微服务

c#
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-04-03 23:29:25 +0000 UTC

在 asp.net 中和等待 Task.Delay 时异步等待的好处

  • 1

我有两个问题。我对 C# 中的异步编程有很好的理解,但仍然存在一些问题。

1) 现在我将描述一个 asp.net 应用程序中的经典情况。例如,您在控制器中有一个操作,它返回一些数据(例如 user'a)。在这种情况下,您在控制器中编写对服务的调用,该服务将返回 user'a 给您,自然,当您调用此服务时,您使用 await。事实证明,当存储库(由服务调用)访问数据库时,当前线程将被释放并返回到控制器,它也不需要做任何事情。这有什么意义?好吧,我释放了线程,然后直到我得到数据,我的调用方法不能继续工作,那为什么还要在这里等待呢?也许在 asp.net 中用于处理我的应用程序中的请求的线程数量有限?我在一堆办公室的所有项目中都观察到这一点,也许我不明白什么?

2)我们经常在访问数据库(对数据库的请求在操作系统中处理它的地方),对计算机文件(也是应用程序之外的操作,即在操作系统中)之前使用await,有时会创建一个线程已经在应用程序中。在所有这些情况下,由于等待,我的主线程空闲时代码正在执行某些操作。最后,我不明白为什么大家建议在Task.Delay之前写await。
我们很清楚,await 不会创建线程,只是简单地根据 await 的次数将方法拆分为多个片段,并在任务完成后作为回调继续执行每个片段,而且它还把 Task 变成了 T(就像我们使用 ContinueWith 一样)。那么谁来执行Task.Delay呢?也许是当前线程(称为 Task.Delay),但是为什么要等待呢?谁执行 Task.Delay?

3)在asp.net应用中,有ConfigureAwait这样的方法,也有HttpContext这样的东西。ConfigureAwait(false) 是否表示 await 之后的第二部分可以在任何上下文中执行?以及如何理解这一点,我会有不同的httpcontext还是什么?我还听说在 asp.net core 中它的工作方式有所不同,那里有什么不同?

4)最后一个问题。异步就像一段代码正在某处执行或等待某事,而无论主线程在等待什么,我们都会释放它以便它可以做其他事情。并且当延续所需的一段代码完成其操作时,我们会自动(关键字自动)返回到它。我是否正确理解了所有内容?

c#
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-02-20 18:32:26 +0000 UTC

C#中的垃圾回收

  • 0

我正在学习 C# 中的垃圾收集。我了解到大会分三个阶段进行

  • 打标
  • 集会
  • 压缩

在标记之前,建立一个链接图,其中根可以是局部变量,静态变量。此图中包含的所有对象都标记为已使用,并且它们不受垃圾回收的影响。您还可以区分活动根和非活动根的概念。


活动根是引用的对象,例如,从静态变量、本地变量。
非活动根- (更新)不可能有这样的事情。

所以我想知道非活动根是否正在被破坏?或者它可以被销毁但不是全部,例如,局部变量是,但静态不是。我是否正确绘制了所有内容(我特别遗漏了一些细节,例如世代,以免问题过多)? 例如,链接A

会发生什么?例如,如果没有对对象D的引用,它将被视为不可访问的对象并将被删除,但它不是根。



这里提出了一个类似的主题CLR 如何检查根和它们(根)所指的对象?

在此处输入图像描述

c#
  • 2 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-01-23 00:06:46 +0000 UTC

使用 Windows 身份验证通过 jenkins 登录 sqlcmd

  • 0

我正在设置 CI。我用詹金斯管道设置它。我需要在 ms sql 中运行 sql 脚本。为此,我使用了 sqlcmd 命令,我在 jenkinsfile 中编写了该命令。这就是 bat 命令的样子

sqlcmd -e -S \"someserver\" -i \"D:\\somefile.sql\" -E  

在此命令中,-E 表示您需要使用 windows 身份验证登录到 sql server,因为我在服务器上运行它应该可以工作(但是当我在本地测试时),这是必要的,以免存储来自存储库中的数据库( jenkinsfile 在存储库中)。当我在 jenkins 中运行构建时,我收到了这条消息

服务器主体“CS\xxxxxxxx$”无法在当前安全上下文下访问数据库“xxxx”。

据我了解,通过詹金斯,我无法使用 Windows 身份验证,即如果您通过命令行运行此命令,则执行我的 sql 脚本。

sql-server
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-05-23 01:39:21 +0000 UTC

将枚举转换为 C#

  • 0

也许是个愚蠢的问题。是否可以将一个枚举转换为另一个枚举?例如
Namespace1.Enum1 a = Namespace1.Enum1.Value1。
Namespace2.Enum1 b = (Namespace2.Enum1)a。
如果是,在什么条件下,请描述

c#
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-05-22 18:36:32 +0000 UTC

删除 EF Core 和事务中的范围

  • 1

当我们在 ef core 中使用 Remove range 删除时,我们是否在事务中完成了所有操作?如果没有从要删除的对象列表中删除某些内容,那么所有内容都会回滚吗?

c#
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-03-16 00:08:37 +0000 UTC

解析异步等待[重复]

  • 4
这个问题已经在这里得到了回答:
您是否需要异步/等待? (5 个回答)
4年前关闭。

您好,对于这个话题的问题,我很抱歉,因为关于这些关键字的文章数量相当多,但也许这么多的文章让我陷入了某种误解。

我只想知道我是否正确理解了所有内容,并向竞选活动提出了几个问题。

  1. 让我们从async开始。标记为 async 的方法允许我们在此方法中使用 await,并要求返回类型具有 GetAwaiter 方法。
  2. 等待关键字。Await 放在辅助线程中执行的操作之前。它允许您不要等到辅助线程(IO 或常规线程)完成其执行。Await 只是将 await 之后的内容包装在一个单独的方法中,该方法在辅助线程完成时由回调调用。因此,主线程继续进一步执行。并且当辅助线程完成后,会从线程池中随机取出一个线程,完成方法的第二部分。

总的来说,它在应用程序中提供了什么

  • 在带有 ui 线程的应用程序中(不完全清楚什么样的 ui 线程,我只使用 asp.net),我们的线程将继续运行并且不会阻塞用户操作;
  • 在 asp.net mvc 中,我的主线程将被释放,只有辅助线程可以工作;
  • 以及隐藏所有执行此操作的逻辑的最后一个语法糖。

问题

  1. 我是否正确描述了所有内容,这真的是异步等待的重点吗(将方法分成两部分并将第二部分作为回调执行,从而不会延迟主线程)?
  2. 什么是configureawait方法?
  3. 为什么很多人说这些关键词与流无关。那么,如何将 await 放在将在辅助线程中执行的操作之前,关键是,这种设计是为了不保留主线程而发明的。所以这里的联系是最直接的还是我错了?
  4. 当辅助线程完成执行时,哪个线程将继续执行方法的第二部分。同一个二级流?或者线程池中的任何线程都会被占用吗?
c#
  • 1 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-11-11 00:03:03 +0000 UTC

线程池 c# 工作

  • 6

您好,我目前正在学习 .net 中的 Threadpool。据我了解,它由已经预先创建的工作线程(它们的数量是有限的)和一个任务队列(即普通委托)组成。每个工作线程都有自己的任务链。工作线程执行任务并释放它。
我也知道我们可以直接将任务添加到线程池(使用 ThreadPool.QueueUserWorkItem()),我读到这比线程启动要快得多,因为线程创建需要很长时间。基于这一切,我有几个问题:
1) Threedpool - 是基于每个应用程序创建的集合,即每个应用程序都有自己的 Threedpool 还是在操作系统内核的上下文中创建?
2)如果 ThreadPool.QueueUserWorkItem() 比 Thread Start 好得多,那为什么要使用它,为什么其他人使用它?也许我总是可以使用 ThreadPool.QueueUserWorkItem()?

c#
  • 2 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-10-27 21:28:13 +0000 UTC

关于C#中IFormatable接口的问题

  • 2

你好,我想IFormatable处理IFormatProvider

  1. ToStringyIFormatable有两个参数。第一个需要了解如何格式化,第二个也一样,只是更详细和具体的描述。问题是,如果第二个已经包含所有内容,为什么要第一个呢?他们甚至可能相互矛盾。例如,我将第一个参数指定为数字应该有一个句点作为分隔符,第二个参数(我的文化)声明应该有一个逗号。
  2. IFormatProvider它有一个方法object GetFormat(Type formatType)。问题是,为什么它返回一个对象?是的,它可以返回任何东西,为什么它至少没有被概括?例如, ToString 在 double 中尝试IFormatProvider导致CultureInfoor NumberFormatInfo(然后是的,他理解结果可以被带到GetFormat)。是的,他从哪里得到我什至会给他这些类型(CultureInfo或NumberFormatInfo)中的哪一个?
c#
  • 2 个回答
  • 10 Views
Martin Hope
Snuppi
Asked: 2020-10-17 19:25:45 +0000 UTC

ICollection<T> 上的 IsReadOnly 属性

  • 9

我试图弄清楚如何编写自己的集合(并且通常更深入地理解集合)。

出于教育目的,我目前正在编写一个继承ICollection<T>.

这样的问题,如果默认集合设置为 add 方法应该如何表现IsReadOnly = true?

有以下选项:

  1. 如果抛出异常,则抛出异常(但这非常愚蠢);
  2. 没有任何实现(原来是只针对接口的虚拟方法,我不确定这是否正常);
  3. 将其隐藏在接口的显式实现下,并使实现为空(与之前的版本相同,只是可能更好一点)。
c#
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5