我正在尝试使用Entity Framework 6为我的ASP.NET MVC应用程序运行集成测试.
我得到的错误是
System.Data.Entity.Core.EntityException:基础提供程序在Rollback上失败.---> System.ArgumentNullException:Value不能为null.
参数名称:连接
代码如下所示:
Database.SetInitializer(new PrimaryInitializerTest());
_context = new PrimaryContextTest();
_context.Database.Initialize(true);
using (var dbt = _context.Database.BeginTransaction())
{
dbt.Commit();
dbt.Rollback();
}
Run Code Online (Sandbox Code Playgroud)
我也尝试dbt.UnderlyingTransaction.Connection.Open()在using语句dbt.UnderlyingTransaction.Connection.Close()下方进行调用,并在调用之下调用Rollback().这给了我错误Connection is not closed.
PrimaryInitializerTest 类
protected override void Seed(PrimaryContextTest context)
{
// (...) Input some values
base.Seed(context);
}
Run Code Online (Sandbox Code Playgroud)
PrimaryContextTest 类
public class PrimaryContextTest : DbContext
{
public PrimaryContextTest() : base("PrimaryContextTest")
{
Database.SetInitializer(new DropCreateDatabaseAlways<PrimaryContextTest>());
}
public DbSet<Story> Stories { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder) …Run Code Online (Sandbox Code Playgroud) 我不能,我无法弄清楚什么是错的.我试图去除空格的列表是这样的:
['L500', ' ', '622651 ', '2007', ' 452295.00', ' 7420', ' 0']
Run Code Online (Sandbox Code Playgroud)
但中间有空格.我试过lstrip,rstrip,regex,split,join,replace,并没有什么作品.列表不会改变.
for item in row:
item.lstrip()
item.rstrip()
print row
Run Code Online (Sandbox Code Playgroud)
那是我的代码.用我提到的其他方法替换lstrip,rstrip.
我正在使用Python 2.7.
我正在尝试运行for循环.这是我的代码部分,我遇到了麻烦:
aldurstengd_ororka = {(18, 19, 20, 21, 22, 23, 24):1, (25):0.95, (26):0.90,
(27):0.85, (28, 29):0.75, (30, 31):0.65, (32, 33):0.55, (34, 35):0.45,
(36, 37):0.35, (40, 41, 42, 43, 44, 45):0.15, (46, 47, 48, 49, 50):0.10,
(51, 52, 53, 54, 55):0.075, (56, 57, 58, 59, 60):0.05, (61, 62, 63, 64,
65, 66):0.025}
for age in aldurstengd_ororka.keys():
for item in age:
if ororkualdur == item:
baetur = baetur + ororkulifeyrir * aldurstengd_ororka([age])
Run Code Online (Sandbox Code Playgroud)
所以我的意图是运行aldurstengd_ororka,对于字典中的每个"age"元组,我为元组内的每个"item"运行另一个for循环.我得到的错误是
TypeError:'int'对象不可迭代
我正在尝试按照本教程:https://docs.djangoproject.com/en/dev/intro/tutorial01/
我正在使用Django 1.6.5.看来本教程中使用的版本与我的完全不同.例如,migrate我没有相关的命令manage.py.我通过下载南图书馆而syncdb不是打字来暂时解决这个问题migrate.但现在教程要我输入:
python manage.py makemigration polls
Run Code Online (Sandbox Code Playgroud)
既不是南方也不是原来的Django.我注定了吗?我是否必须安装更新版本的Django?这对我来说似乎很奇怪,因为这样做很麻烦.安装1.6是目前最容易安装的.
我有一个包含字母和数字的字符串列表.我想搜索这些数字并让它们归还给我.做这个的最好方式是什么?我是Python的新手,我查看了正则表达式,现在我正在学习它们,但我不知道在使用它们之前我的正则表达式是否足够好.
我有这个代码
String speed_string = "baka baka saka laka";
String[] string_array = speed_string.split(" ");
System.out.println(string_array.length);
Run Code Online (Sandbox Code Playgroud)
当我运行它时它返回值1.这是为什么?好像只有字符串的第一个单词才会被保存.
重复的模型字段给我带来麻烦(当我运行我的网页时没有这样的表appname_modelname).每当我执行./manage.py迁移appname时,它会给我"重复字段".我检查了我的models.py,其中只有一个.如何删除该重复字段?似乎无论我做什么,它都会停留.我试过了:
删除数据库
删除app文件夹中的迁移文件夹
执行./manage.py sqlclear south,然后在dbshell中删除south_migrationhistory表
./manage.py schemamigration appname --initial,./ manage.py migrate appname --fake
我已经没想完了.
class Document(models.Model):
filename = models.CharField(max_length=255, blank=True, null=True, default=None)
identity = models.CharField(max_length=255, default=None, null=True)
user = models.ForeignKey(User, null=False)
user_id = models.IntegerField(User, null=True)
docfile = models.FileField(upload_to=_upload_path, storage=fs) # upload_to is a path inside the storage path
def get_upload_path(self,filename):
return str(self.user.id) + '/' + str(date.today()) + '/' + filename
Run Code Online (Sandbox Code Playgroud) python ×5
django ×2
string ×2
arrays ×1
asp.net-mvc ×1
c# ×1
expression ×1
int ×1
iterable ×1
java ×1
list ×1
object ×1
split ×1
sql-server ×1