如果我必须使用 MVC 架构创建某种 API,我就必须为控制器接收的 DTO 和控制器生成的 DTO 确定命名约定,我是对的吗?
\n例如,给出以下代码:
\npublic class InStudentDTO\n{\n public int Id { get; set; }\n public List<int> Grades { get; set; }\n}\n\npublic class OutStudentDTO\n{\n public int Id { get; set; }\n public bool HasApprovedCourse { get; set; }\n}\n\n[HttpPost]\npublic OutStudentDto StudentHasApprovedCourse(InStudentDto dto)\n{\n OutStudentDto outStudentDto = _someService.CalculateStudentApprovedCourse(dto);\n return outStudentDto;\n}\nRun Code Online (Sandbox Code Playgroud)\n这只是一个愚蠢的示例,但要点是我想在具有该属性的服务内执行一些计算List<int> Grades,并且稍后不在控制器的输出上显示它。因此,据我了解,我应该创建一个全新的 DTO,但不会公开该List<int> Grades属性,对吗?如果是这样,这个“生成的 DTOs\xc2\xa8”的正确命名约定如何?或者应该将它们命名为 Viewmodels?
谢谢!
\n我必须创建一个多选过滤器来接受要单击的多个选项值,以便优化后端某些获取 API 端点的响应。
\n每当用户单击一个选项时,就会动态呈现一个“芯片”组件以感知用户:“嘿,您只需通过这个和那个过滤选项来过滤结果”
\n在互联网上环顾四周,我发现了这个stackblitz
\n在此代码示例中,我以某种方式理解了这一行:
\nlet componentFactory = this.CFR.resolveComponentFactory(ChildComponent);\nlet childComponentRef = this.VCR.createComponent(componentFactory);\nRun Code Online (Sandbox Code Playgroud)\n我们将给定子组件的实例插入到ViewContainerRef. 找到一个类似这样的对象:
_data: Object { renderElement: <!-- -->, componentView: undefined, viewContainer: {\xe2\x80\xa6}, \xe2\x80\xa6 }\n_elDef: Object { nodeIndex: 4, bindingIndex: 0, outputIndex: 1, \xe2\x80\xa6 }\n_embeddedViews: Array(5) [ {\xe2\x80\xa6}, {\xe2\x80\xa6}, {\xe2\x80\xa6}, \xe2\x80\xa6 ] //here \n_view: Object { def: {\xe2\x80\xa6}, parent: {\xe2\x80\xa6}, state: 1036, \xe2\x80\xa6 }\nRun Code Online (Sandbox Code Playgroud)\n__embeddedViews动态生成的视图将堆叠在对象下的位置
稍后为了决定删除哪些视图,此 stackblitz 的创建者只需获取组件并创建一个ViewContainerRef.indexOf(component)来获取存储组件的索引,并验证动态生成的组件是否存在于该数组中。然后他/她只需删除调用的视图this.ViewContainerRef.remove(index);
有趣的是,在我的实现中,当我登录时,ViewContainerRef我得到这个对象作为响应:
我有一个 git 分支策略如下:
分支机构:
experimental-feature integrates to develop
develop integrates to master
Run Code Online (Sandbox Code Playgroud)
在每个分支中,我都有一个名为 azure-pipelines.yaml 的文件,其中包含管道构建的规则,每个规则在每个分支中都不同,因为每个文件都有一个与trigger分支名称匹配的属性名称。
IE:master 分支有一个 azure-pipelines.yml,它有一个名为“master”的触发器属性,因为对于 master 分支上的每个更改,都会触发管道。开发和实验功能也是如此。到目前为止,一切都很好。
develop现在,我不明白为什么当我从git创建拉取请求时,master无法识别每个azure-pipeline.yaml(开发和主控)之间的更改。这很好,因为azure-pipeline.yml开发中的内容总是会覆盖master azure-pipeline.yaml,而我不希望这样。
experimental-feature但是,当我通过拉取请求集成时, gitdevelop的更改确实会识别我不想要的文件之间的更改。
有人可以在这里启发我吗?我在微软文档中也找不到它是如何工作的。
有谁知道我为什么一直这样吗?“无法验证回调 URL 或验证令牌。请验证提供的信息或稍后重试。”
我检查的事情:
我不知道如何解决该错误
我有一个用 c# 编写的解决方案,.netcore 2.2,测试框架是 xunit,看起来非常像这样:
-src
--controllers
--services
-test
--controllers.integrationtest
--services.integratiotest
Run Code Online (Sandbox Code Playgroud)
我们正在使用相同数据库(solutionname.test)的两个不同的 dll(controllers.integrationtest.dll 和 services.integrationtest)执行一些集成测试
现在,当我运行"dotnet test"该解决方案时,似乎两个 dll 正在尝试访问相同的资源(数据库),并且一个 dll 出现死锁。
问题是,当我运行“dotnet test”时,我想禁用 dll 的并行执行以避免死锁,所以我搜索了该内容,文档说要禁用 dll 的并行执行,您必须:
xunit.runner.json在我所做的 csproject 的根目录中添加一个并且工作正常。(这是在 Visual Studio 上运行的,因为我用另一个删除测试名称的“_”字符的功能测试了它[methodDisplay]:)
配置 xunit.runner.json 文件以始终复制或在 Visual Studio 中保留最新版本,以便复制到 bin 文件夹中(与任何 appsetings.json 文件一样)
我读过,您可以在 assemblyInfo.cs 文件中放置一个程序集属性,顺便说一句,该属性似乎已被普通的 csproj 替换,所以我有点困惑。
我想要实现的最终目标是,当 DevOps 使用 dotnet 测试时,集成测试不会因并发问题而崩溃。
我在看这个文件:https : //rxviz.com/examples
atpause-and-resume
在第 10 行中,它与以下内容相同:
pauseResume$.pipe(
有谁知道这是什么意思?
angular ×2
api ×2
c# ×2
.net ×1
.net-core ×1
azure ×1
azure-devops ×1
devops ×1
dto ×1
frontend ×1
git ×1
javascript ×1
naming ×1
observable ×1
rxjs ×1
typescript ×1
viewmodel ×1
whatsapp ×1
xunit ×1