如果构造函数是私有的(.NET),如何设置单元测试?
这是我的班级:
public class Class2
{
// Private constructor.
private Class2()
{
}
public static Class2 getInstance()
{
if (x == null)
{
x= new Class2();
}
return x;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的单元测试:
[TestFixture]
public class Class2Tester
{
private Class2 test;
[SetUp()]
public void SetUp()
{
// I cant do this. How should I setup this up?
test = new Class2();
}
}
Run Code Online (Sandbox Code Playgroud) 我希望PDF阅读器(Adobe Reader)打开PDF文件,缩放自动设置为100%.
谢谢!
我正在努力理解使用Doctrine 2在来自不同有界上下文的两个实体之间实现关联映射的正确方法。假设有两个分别属于“ User”和“ Content”有界上下文的“ User”和“ Post”实体。在“内容”上下文中还有一个“用户”概念,它通过多对一关联来确定“帖子”的作者。因此,“内容”上下文中的“用户”只是一个包含用户ID的值对象。
我的问题是我应该如何使用教义2实现这种关联?我有两个解决方案,都有各自的问题:
解决方案1:
/**
* @ORM\Entity
* @ORM\Table(name="posts")
* @ORM\HasLifecycleCallbacks()
*/
class Post
{
...
/**
* @ORM\ManyToOne(targetEntity="UserBC\User", inversedBy="posts")
* @ORM\JoinColumn(name="user_id", referencedColumnName="id")
*/
private $user;
...
}
Run Code Online (Sandbox Code Playgroud)
解决方案2:
/**
* @ORM\Entity
* @ORM\Table(name="posts")
* @ORM\HasLifecycleCallbacks()
*/
class Post
{
...
/**
* @ORM\Column(type="integer")
*/
private $user_id;
...
}
Run Code Online (Sandbox Code Playgroud)
在第一个解决方案中,“用户”上下文中的“用户”实体已在“内容”上下文中使用,这违反了彼此独立的BC上的DDD规则。第二种解决方案遵循DDD规则,但会影响数据库架构(通过外键约束删除“用户”和“帖子”表之间的数据库级关系)。
那么,实现这种关联的正确方法是什么?
Identity Server 4 是否支持在多次登录尝试失败后暂停帐户?
我知道有更好的方法来处理失败的登录尝试,比如在用户最终成功登录时要求用户提供更多形式的身份证明。但是扩展 Identity Server 4 以在 x 次登录失败后暂停帐户是否足够容易,通过IP地址等?
我有一个使用 ASP.NET Identity 的 Identity Server 4 实现。我之前问过一个关于如何应用某些登录规则的问题,并收到了一个答案,解释了如何在Startup.cs. 这是我添加到该ConfigureServices方法中的内容:
services.AddIdentity<ApplicationUser, IdentityRole>(options =>
{
options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(15);
options.Lockout.MaxFailedAccessAttempts = 5;
options.Password.RequiredLength = 9;
options.Password.RequireDigit = true;
options.Password.RequireLowercase = true;
options.Password.RequireUppercase = true;
options.Password.RequireNonAlphanumeric = false;
options.SignIn.RequireConfirmedEmail = true;
})
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
Run Code Online (Sandbox Code Playgroud)
密码规则似乎有效,但锁定规则不起作用。我需要启用什么功能吗?
为什么我在搭建脚手架时得到的证书不受信任?
我正在运行 EF Tools Scaffold-DbContext 命令并收到以下错误:
A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.)
这是我发出的命令:
Scaffold-DbContext "Server=SQL.mysite.com;Initial Catalog=db_data;User Id=db_admin;Password=pass123;Persist Security Info=True;Encrypt=true/yes" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "MyDataDbContext" -DataAnnotations -Force
您能帮我了解如何解决这个问题吗?
我在代码分析中有一个CA2000警告.但我无法找到如何解决它或为什么它是一个问题.这是失败的代码:
IController controller = new ErrorController();
controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));
Run Code Online (Sandbox Code Playgroud)
我试图像这样解决它:
using (IController controller = new ErrorController())
{
controller.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));
}
Run Code Online (Sandbox Code Playgroud)
但是MVC给了我这个错误:
55 'System.Web.Mvc.IController': type used in a using statement must be implicitly convertible to 'System.IDisposable'
Run Code Online (Sandbox Code Playgroud)
我可以压制错误,但我想知道导致错误的原因并解决问题.
我听说Umbraco是用Angular 1编写的.是否可以在Umbraco上运行一个用Angular 4编写的网站?
他们一起玩得好吗?
我正在使用Identity Server 4,我已经自定义了我的ASP.NET Identity用户,如下所示:
public class ApplicationUser : IdentityUser
{
[MaxLength(100)]
public virtual string FirstName { get; set; }
[MaxLength(100)]
public virtual string LastName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我无法看到我将Identity Server 4配置为在声明集合中包含这两个属性的位置.我已经查看了一些Identity Server 4示例,但看不到任何示例.
理想情况下,我希望将这两个用户属性映射到声明given_name和family_name声明.
我正在联系通知并查询userinfo端点(混合流?).所以我不确定这是Identity Server的配置还是userinfo端点的自定义?
我在java程序中有一个像这样的字符串数组
String results[] = { "2", "1", "5", "1" };
Run Code Online (Sandbox Code Playgroud)
我想将其转换为整数数组,如下所示:
int results[] = { 2, 1, 5, 1 };
Run Code Online (Sandbox Code Playgroud)
最后我想找到该int数组所有元素的总和.
c# ×3
acrobat ×1
arrays ×1
asp.net ×1
constructor ×1
doctrine-orm ×1
int ×1
itextsharp ×1
java ×1
nunit ×1
orm ×1
page-zoom ×1
pdf ×1
private ×1
sql-server ×1
string ×1
umbraco ×1
unit-testing ×1