Orchardcms 如何在自己的记录中保存用户引用
我在这里试图实现的是将当前用户实例保存在我的ApiConfigurationRecord表中。我已经在互联网上搜索过了,大多数例子都是使用UserPartRecord。但是我遇到的麻烦是获取UserPartRecord对象本身 这是我的实体类,看起来像:Orchardcms 如何在自己的记录中保存用户引用,orchardcms,orchardcms-1.7,Orchardcms,Orchardcms 1.7,我在这里试图实现的是将当前用户实例保存在我的ApiConfigurationRecord表中。我已经在互联网上搜索过了,大多数例子都是使用UserPartRecord。但是我遇到的麻烦是获取UserPartRecord对象本身 这是我的实体类,看起来像: public class ApiConfigurationRecord { public virtual int Id { get; set; } public virtual string Name { get; set;
public class ApiConfigurationRecord
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual UserPartRecord RegisterBy { get; set; }
}
这是我的Migration.cs代码,看起来像:
public int Create()
{
SchemaBuilder.CreateTable("ApiConfigurationRecord", table => table
.Column<int>("Id", column => column.PrimaryKey().Identity())
.Column<int>("RegisterBy_id")
.Column<string>("Name", column => column.NotNull())
);
return 1;
}
public int Create()
{
CreateTable(“ApiConfigurationRecord”,table=>table
.Column(“Id”,Column=>Column.PrimaryKey().Identity())
.列(“注册表项id”)
.Column(“名称”,Column=>Column.NotNull())
);
返回1;
}
这是我的动作控制器代码:
public ActionResult Test()
{
var userId = this._orchardServices.WorkContext.CurrentUser.Id;
// below code got error: The non-generic method IContentManager.Query() cannot be used with type arguments
this._orchardServices.ContentManager.Query<UserPart, UserPartRecord>().Where(u => u.Id == userId);
return null;
}
公共操作结果测试()
{
var userId=this.\u orchardServices.WorkContext.CurrentUser.Id;
//以下代码出现错误:非泛型方法IContentManager.Query()不能与类型参数一起使用
这是.u orchardServices.ContentManager.Query(),其中(u=>u.Id==userId);
返回null;
}
我在这个问题上纠缠了好几个小时。需要知道如何保存这个用户关系对象,最重要的是,获取对象本身。请指导我。我的超能力告诉我,您的控制器文件顶部缺少以下内容:
using Orchard.ContentManagement;
查询
方法的通用版本是此命名空间中的扩展方法。或者您可以这样做
_orchardServices.WorkContext.CurrentUser.As<UserPart>().Record;
使用.As扩展方法
using Orchard.ContentManagement;