小编w00*_*977的帖子

如何区分测试类中的单元测试和集成测试?

我的问题与此类似:Junit:拆分集成测试和单元测试.但是,我的问题是关于NUnit而不是:JUnit.在测试类中区分单元测试和集成测试的最佳方法是什么?我希望能够做到这样的事情:

[TestFixture]
    public class MyFixture
    {
        [IntegrationTest]
        [Test]
        public void MyTest1()
        {
        }

        [UnitTest]
        [Test]
        public void MyTest1()
        {
        }
    }
Run Code Online (Sandbox Code Playgroud)

有没有办法用NUnit做到这一点?有没有更好的方法来点这个?

c# nunit

3
推荐指数
1
解决办法
600
查看次数

配置 Identity Server 以使用 ASP.NET Identity 角色

我正在尝试了解有关身份服务器的更多信息。我目前正在努力让基于角色的授权发挥作用。以下是我遵循的步骤:

1)下载示例解决方案:https://github.com/IdentityServer/IdentityServer4.Samples/tree/release/Quickstarts/6_AspNetIdentity

2) 运行解决方案,它将启动:

a) 身份服务器项目

b) MVC 项目

c) API 项目

3) 浏览到 MVC 项目并应用迁移。4) 注册新用户:Bert@Bert.com 5) 浏览到:MVC 项目中的 CallApiUsingUserAccessToken。由于用户已获得授权,因此可以按预期访问 API。

假设我现在想更改 IdentityContoller:

[Authorize] 
public class IdentityController : ControllerBase 
Run Code Online (Sandbox Code Playgroud)

对此:

[Authorize(Roles="Admin")] 
public class IdentityController : ControllerBase 
Run Code Online (Sandbox Code Playgroud)

和家庭控制器(https://github.com/IdentityServer/IdentityServer4.Samples/blob/release/Quickstarts/6_AspNetIdentity/src/MvcClient/Controllers/HomeController.cs):

public async Task<IActionResult> CallApiUsingUserAccessToken()
Run Code Online (Sandbox Code Playgroud)

对此:

[Authorize(Roles="Admin")] 
public async Task<IActionResult> CallApiUsingUserAccessToken()
Run Code Online (Sandbox Code Playgroud)

我必须对配置进行哪些更改?

今天下午我尝试了一些建议。例如,在 MVCClient 的启动中我尝试添加:

options.ClaimActions.MapJsonKey("role", "role", "role");
options.TokenValidationParameters.NameClaimType = "name";
options.TokenValidationParameters.RoleClaimType = "role";
Run Code Online (Sandbox Code Playgroud)

请假设我已将角色正确添加到身份数据库(并将角色与用户相关联)。

c# asp.net-identity identityserver4

3
推荐指数
1
解决办法
1727
查看次数

从 Dockerfile 创建镜像

我正在查看这样的 Dockerfile:

FROM microsoft/aspnetcore:2.0 AS base

# Install the SSHD server
RUN apt-get update \
  && apt-get install -y --no-install-recommends openssh-server \
  && mkdir -p /run/sshd \
  && echo "root:Docker!" | chpasswd
#Copy settings file. See elsewhere to find them. 
COPY sshd_config /etc/ssh/sshd_config
COPY authorized_keys  root/.ssh/authorized_keys

# Install Visual Studio Remote Debugger
RUN apt-get install zip unzip
RUN curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v latest -l ~/vsdbg
  
EXPOSE 2222
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用此 dockerfile 创建图像。我怎样才能做到这一点?在过去的几个小时里,我读了很多网页,例如这个https://odewahn.github.io/docker-jumpstart/building-images-with-dockerfiles.html,但是它们似乎都过于复杂化了,因为我相信有只需要一个命令。

docker

3
推荐指数
1
解决办法
1万
查看次数

SQL IN语句

可能重复:
sql server 2008 management studio不检查查询的语法
T-SQL当子查询格式错误时删除表中的所有行

请参阅以下查询:

select * from tablea where reference in (
select reference from tableb)
Run Code Online (Sandbox Code Playgroud)

referencetableb中不存在该列,因此我希望看到一个错误,但是返回表a中的所有行.


为什么tablea的所有行都返回了?

sql sql-server

2
推荐指数
1
解决办法
280
查看次数

VB6和.NET - 数组差异

请看一下我在VB6和.NET中运行的以下代码:

Private Sub Form_Load()
Dim TestArray3() As String
TestArray3 = TestArrayFunction

End Sub

Private Function TestArrayFunction() As String()
    Dim TestArray1(0 To 1) As String
    Dim TestArray2() As String
    TestArray1(0) = "Monday"
    TestArray1(1) = "Tuesday"
    TestArray2 = TestArray1
    TestArray1(0) = "Wednesday"
End Function
Run Code Online (Sandbox Code Playgroud)

当程序在VB6中到达TestArrayFunction的末尾时,TestArray2(0)的值是"星期一",但是当在.NET中运行时,它是"星期三".我在.NET中理解,Array是一个对象,并且在TestArrayFunction中有两个引用它的引用.为什么在VB6中不是这种情况?

vb6

2
推荐指数
1
解决办法
1451
查看次数

Visual Studio - 附加到进程

我试图理解'附加到进程'在Visual Studio中有用.我正在寻找内存泄漏,我发现WinDBG至少可以说是难以使用的.我意识到还有其他商业替代品,如ANT Profiler.

什么是'附加到过程'专门用于?我在网上搜索过,发现了很多文档,解释了在Visual Studio中选择什么,以及如何使用宏来实现这个功能,但没有文档说明这对于具体的有用.

更新19/06/2012格林威治标准时间19:40 我设法将Visual Studio调试器附加到运行的进程(小型VB.NET程序).但是,我注意到似乎不需要PDB文件,即我可以添加断点并在没有它们的情况下逐步执行代码.附加到Visual Studio中的进程时是否需要PDB文件?

debugging visual-studio-2008

2
推荐指数
1
解决办法
5092
查看次数

Dlls 在一个单独的进程中?

我了解 .lib 和 .dll 之间的区别。

我有一个可执行文件:a.exe,它引用b.dll。当我启动a.exe时,会为a.exe创建一个新的Windows进程,但没有b.dll的Windows进程。b.dll 是否表示为 Windows 进程?

.net com

2
推荐指数
1
解决办法
740
查看次数

SQL replace语句太慢

我有一个replace语句,执行以下操作:

SELECT Distinct Forenames, Surname, dbUSNs.DateOfBirth, Datasetname, 
       dbUSNs.MoPIGrade, SourceAddress, VRM, URNs 
FROM Person 
WHERE ( Replace(Replace(Replace(Replace(Replace(Replace(Replace
        (Replace(Replace(Replace(Replace(Replace(Replace(Replace
        (Replace(Replace(Replace(Replace(Replace(Replace(Replace
        (Replace(Replace(Replace(Replace
        (Surname,'/',''''),'?',''''),'',''''),'^',''''),'{',''''),'}',''''),
                '[',''''),']',''''),';',''''),'$',''''),'=',''''),'*',''''),
                '#',''''),'|',''''),'&',''''),'@',''''),'\',''''),'<',''''),
                '>',''''),'(',''''),')',''''),'+',''''),',',''''),'.',''''),
                ' ','''') LIKE 'OREILLY%')
Run Code Online (Sandbox Code Playgroud)

因此,即使OReilly被通过,也会发现O'Reilly。但是,这太慢了。有没有更好的方法来解决呢?

sql sql-server

2
推荐指数
1
解决办法
4641
查看次数

甲骨文 - CHAR(39)

Oracle中的等效语法是什么:

SELECT CHAR(39) --this displays an apostrophe on the screen
Run Code Online (Sandbox Code Playgroud)

我花了一些时间谷歌搜索这个; 今天下午.我试过了:CHR(39); ASCII(39)等我认为这很容易找到,但事实并非如此.

sql sql-server oracle

2
推荐指数
1
解决办法
1万
查看次数

LINQ - 选择某些列

我是 LINQ 的新手。请看下面的代码:

Public Class Person
    Public Name As String
    Public Address As String
    Public Age As String
End Class

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        Try
            Dim p1 As New Person
            Dim p2 As New Person
            Dim p3 As New Person

            p1.Name = "Ian"
            p1.Age = 32
            p1.Address = "8 street"

            p2.Name = "Fred"
            p2.Age = 62
            p2.Address = "5 road"

            p3.Name = "Bernie"
            p3.Age = 59
            p3.Address = "5 road"

            Dim …
Run Code Online (Sandbox Code Playgroud)

linq vb.net

2
推荐指数
1
解决办法
4341
查看次数