public class Context : DbContext
{
public Context(string connString) : base(connString)
{
Database.SetInitializer(new MyContextInitializer());
}
//...
Run Code Online (Sandbox Code Playgroud)
需要将连接字符串传递给上下文构造函数.字符串应该如何,例如,对于SQL Compact?试过这个,但没有成功:
Context db = new Context("Provider=System.Data.SqlServerCe.4.0;Data Source=D:\\Context.sdf");
Run Code Online (Sandbox Code Playgroud)
编辑:
如果我尝试这个字符串: "Data Source=D:\\Context.sdf"
System.Data.ProviderIncompatibleException未处理
Message =从数据库获取提供程序信息时发生错误.
这可能是由实体框架使用不正确的连接字符串引起的.检查内部异常以获取详细信息,并确保连接字符串正确.来源=的EntityFramework
如果我试着像这样提到提供者: "Data Source=D:\\Context.sdf;provider=System.Data.SqlServerCe.4.0"
System.ArgumentException未处理
消息=不支持关键字:'provider'.
来源= System.Data
从Azure VM上的Azure库安装Ubuntu Server LTS 14.04.使用我的密码以Azure创建的标准"azureuser"登录.更改root密码:
sudo passwd root
Run Code Online (Sandbox Code Playgroud)
如果我尝试以"root"身份登录:
Access denied
Run Code Online (Sandbox Code Playgroud)
我错过了什么?是的,密码是正确的.
看起来像愚蠢的问题,但我只是不明白.我的实体:
public class Page
{
public int Id { get; set; }
//...
public int? ParentId { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在控制器中:
db.Pages.First(x => x.ParentId == null);
Run Code Online (Sandbox Code Playgroud)
按预期工作(返回一些元素).但:
int? test = null;
db.Pages.First(x => x.ParentId == test);
Run Code Online (Sandbox Code Playgroud)
抛出 Sequence contains no elements
我错过了什么?
我刚刚在Azure上发布了我的新ASP.NET MVC网站,其中包含Identity和OWIN授权.前端工作得很好,但后端有问题.我在管理员控制器中使用[Authorize]属性来检查用户是否具有访问它的必需角色,如下所示:
[Authorize(Roles = "Admin")]
Run Code Online (Sandbox Code Playgroud)
在localhost上即使使用远程Azure SQL数据库也可以正常工作.但是在Azure上,任何具有authorize属性且带有角色的控制器都会加载几分钟然后抛出:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)
没有角色的授权属性工作正常.
获得了有效的AJAX表单:
@using (Ajax.BeginForm(...))
Run Code Online (Sandbox Code Playgroud)
我想在加载结果时禁用该按钮。如果我使用这个:
$("#submit").click(function () { $("#submit").button().attr('disabled', true).addClass('ui-state-disabled'); })
Run Code Online (Sandbox Code Playgroud)
它禁用按钮,但是表单不会将任何内容发送到控制器。我该如何解决?(是的,我几乎不知道如何使用JS)
我正在寻找一个存储我的网站配置的地方,它将通过网站的管理面板进行更改(比如选择主题,更改主页标题等).据我所知,它web.config是只读的,并且我确实不想使用DB.那么解决这个问题的标准方法是什么?
陷入错误:
Cannot use a lambda expression as an argument to a dynamically dispatched operation without first casting it to a delegate or expression tree type
Run Code Online (Sandbox Code Playgroud)
举一个简单的例子,让我们尝试使用实体框架从数据库中获取一个对象,而不是实际知道它的类型:
private DbContext db;
private dynamic test(dynamic entity)
{
return db.Set(entity.GetType()).First(x => x.Id == entity.Id);
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?