小编Dra*_*ken的帖子

ASP.NET 5标识 - 自定义SignInManager

我有一个MVC 6项目(vNext),我正在玩ASP.NET身份.在我的情况下,我不想使用使用EF(SignInManager,UserManager,UserStore)的内置东西.我有一个外部数据库,我只想进行用户名/密码查找并返回一个有效的cookie.所以我开始写自己的课程.

public class MyUser
{
    public string Id { get; set; }
    public string UserName { get; set; }
    public string Password { get; set; }
    public string PasswordHash { get; set; }
}

public class MyUserStore : IUserStore<MyUser>, IUserPasswordStore<MyUser>
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

MyUserStore课堂上我使用硬编码的用户列表作为我的商店(仅用于测试目的).我重写了一些方法只是为了从硬编码的商店中返回数据.

public class MyUserManager : UserManager<MyUser>
{
    public MyUserManager(
        IUserStore<MyUser> store,
        IOptions<IdentityOptions> optionsAccessor,
        IPasswordHasher<MyUser> passwordHasher,
        IEnumerable<IUserValidator<MyUser>> userValidators,
        IEnumerable<IPasswordValidator<MyUser>> passwordValidators,
        ILookupNormalizer keyNormalizer,
        IdentityErrorDescriber errors,
        IEnumerable<IUserTokenProvider<MyUser>> tokenProviders,
        ILoggerFactory logger,
        IHttpContextAccessor contextAccessor) :
        base(store, optionsAccessor, passwordHasher, userValidators, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-identity-2 asp.net-core-mvc asp.net-core

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

org.hibernate.StaleStateException:批量更新从update [0]返回意外的行数; 实际行数:0; 预期:1

我正在使用struts和hibernate.我在hbm中使用set有父子关系.在我正在使用session.saveOrUpdate()方法保存的操作中,但保存它时显示以下错误.任何人都可以帮我注意解释我犯错误的地方吗?

这是我的hbm.file

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

 <class name="com.model.cargo" table="cargo">
  <id name="id" column="id" type="java.lang.Long">
   <generator class="increment" />
  </id>
  <property name="cname" column="cname" />
  <property name="cdate" column="cdate" />
  <property name="csource" column="csource" />
  <property name="cdestination" column="cdestination" />
  <property name="create" column="createby" />
  <property name="status" column="status" />

  <set name="itemList" table="item" inverse="true"
   cascade="all-delete-orphan">
   <key>
    <column name="id" />
   </key>
   <one-to-many class="com.model.Item" />
  </set>
 </class>

 <class name="com.model.Item" table="item">
  <id name="itemid" column="itemid" type="java.lang.Long">
   <generator class="increment" />
  </id>
  <property name="itemName" column="itemname" /> …
Run Code Online (Sandbox Code Playgroud)

java hibernate

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

Environment.GetEnvironmentVariable将找不到变量值

Environment.GetEnvironmentVariable("variableName")如果从IIS上托管的webMethod中进行调用,为什么不能获得变量值?如果我从同一台机器上的控制台应用程序调用它,它将起作用?

我在哪里设置这些变量以使IIS Web服务可见?我应该使用第二个参数Environment.GetEnvironmentVariable(name, target)来获取它吗?

它实际上非常简单:

[WebMethod(Description = "Gets the environment variable value.")]
public string GetEnvironmentVariable()
{
    return Environment.GetEnvironmentVariable("VARIABLE_NAME_HERE");
}
Run Code Online (Sandbox Code Playgroud)

顺便说一句,VARIABLE_NAME_HERE设置在系统和用户级别.

.net c# iis web-services environment-variables

26
推荐指数
4
解决办法
4万
查看次数

使用angular-cli在angular4应用程序中正确使用environment.ts

我使用Intellij Ultimate来编写我的angular 4应用程序.

我创建了一个新的Angular 4项目,它包含environment.ts并且environment.prod.ts环境已正确配置angular-cli.json.

如何在我的代码中导入它?实际上,当我构建它时,我说明要使用哪个环境.它是如何工作的?我需要用Intellij编译一些东西吗?

我尝试使用Google搜索并在人们实际导入特定的environment.ts文件时找到了许多示例.但那不好,对吧?因为它将使用相同的environment.ts文件,即使我为不同的环境构建.

我该怎么办?

angular-cli angular

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

初始化多维数组:{0}与{{{0}}}

在我正在分析的C代码中,有很多多维(struct)数组,用不同数量的大括号初始化,例如{{0}}{{{0}}}.

但是,替换它们{0}也很有效.

使用一组或多组花括号({})出现之间是否存在(功能)差异?

c arrays initialization

25
推荐指数
2
解决办法
1849
查看次数

什么是工作线程,它们在反应堆模式中的作用是什么?

我正试图进行Reactor模式(并发),但在很多例子中他们都在讨论'工作线程'.什么是工作线程?它们与"正常"线程的区别是什么?他们在反应堆模式中的作用是什么?

java multithreading design-patterns reactor

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

在分支之间转换时构建错误:您的项目未引用".NETFramework,Version = v4.7.2"框架

我们正在使用Git,我们有一个针对完整网络框架的解决方案.几天前,我开始将解决方案迁移到.net核心.不幸的是,出现了一些让我回到主分支(它具有完整.NET框架的代码)的东西.每当我尝试构建应用程序时,都会收到以下错误:

1> D:\ Program Files(x86)\ Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\NuGet\15.0\Microsoft.NuGet.targets(186,5):错误:您的项目未引用".NETFramework,版本= v4.7.2"框架.在project.json的"frameworks"部分中添加对".NETFramework,Version = v4.7.2"的引用,然后重新运行NuGet restore.

我已经尝试清理nuget包,运行git reset,但似乎没有任何帮助.对于发生了什么有什么想法?

.net c# git build .net-core

23
推荐指数
5
解决办法
4758
查看次数

C#nameof运算符引用实例属性可以没有实例吗?

当我没有实例时,我经常想要获取类型的实例属性的名称.目前要执行此操作,我使用以下内部函数来解释Expression[Func[T, object]]参数并返回属性名称:

var str = LinqExtensions.NameOf<ClientService>(x => x.EndDate);
// Now str == "EndDate"
Run Code Online (Sandbox Code Playgroud)

然而,不使用内置nameof运算符似乎是一种耻辱.

不幸的是,nameof运算符似乎需要一个实例,或者引用一个静态属性.

是否有一种巧妙的方式来使用nameof操作员而不是我们的内部功能?例如:

nameof(ClientService.EndDate) // ClientService.EndDate not normally syntactically valid as EndDate is instance member
Run Code Online (Sandbox Code Playgroud)

编辑

我完全错了,nameof(ClientService.EndDate)所描述的语法实际上是按原样工作的.

c# c#-6.0 nameof

20
推荐指数
1
解决办法
8301
查看次数

java.lang.IllegalStateException:没有可用的事务性EntityManager

项目使用Hibernate(JPA),Spring和Maven.我的实体和DAO在一个单独的JAR中.

pom.xml中:

<project ...>
    ...
    <artifactId>database</artifactId>

    <dependencies>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>3.5.4-Final</version>
        </dependency>
    </dependencies>    
</project>
Run Code Online (Sandbox Code Playgroud)

DAO:

public class AbstractDAO<T extends BaseEntity> implements GenericDAO<T> {


    private final Class<T> persistentClass;

    private EntityManager entityManager;

    public AbstractDAO(Class<T> entityClass) {
        super();
        this.persistentClass = entityClass;
    }

    @PersistenceContext
    public void setEntityManager(EntityManager entityManager) {
        this.entityManager = entityManager;
    }


    public EntityManager getEntityManager() {
        return entityManager;
    }

    ...

    public void fooBar() {
       //Exception from this line
       Session session = getEntityManager().unwrap(Session.class);
       ...
    }

    ....
Run Code Online (Sandbox Code Playgroud)

}

我有一个使用Spring的模块.

pom.xml中:

<project ...>
...
<artifactId>api</artifactId>

<dependencies> …
Run Code Online (Sandbox Code Playgroud)

java spring hibernate jpa maven

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

在Android中的日历中添加一天会在31日失败

假设目前日期是5月28日.如果我按顺序调用以下命令,则输出变为

cal.add(Calendar.DATE, 1);  // Day = 29
cal.add(Calendar.DATE, 1);  // Day = 30
cal.add(Calendar.DATE, 1);  // Day = 31
cal.add(Calendar.DATE, 1);  // Day = 31
cal.add(Calendar.DATE, -1); // Day = 29
Run Code Online (Sandbox Code Playgroud)

为什么这不会跳到下个月?为什么它会停留在第31位(但是当你减去1时它会跳到29)?

java android calendar

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