我正在处理的当前项目,我告诉实体框架通过设置SetInitializer并使用params null来执行任何操作:
public EfDbContext()
{
Database.SetInitializer<EfDbContext>(null); //new NullDatabaseInitializer<EfDbContext>());
}
我有一个创建一些表的脚本。当我运行脚本时,它正在DB中创建dbo .__ MigrationHistory。
如何禁用迁移,我认为上面的代码会禁用它。
我错过了什么吗?我也没有启用迁移以及任何用于迁移的配置文件。
我正在使用EF 6.1.3。
答案 0 :(得分:1)
在迁移文件夹中有一个名为Configuration的文件,在构造函数中尝试类似这样的文件:
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
无论配置如何,完全禁用迁移的丑陋但简单的方法是删除表dbo .__ MigrationHistory。
答案 1 :(得分:1)
我通过将以下代码添加到 public void fetchImage() throws IOException{
URL obj = new URL(rest_url);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
con.setDoOutput(true);
con.setRequestMethod("GET");
//specify your image file destination path
File destinationFile=new File("/destinationPath");
FileOutputStream outputStream=new FileOutputStream(destinationFile);
InputStream inputStream=con.getInputStream();
//start stream copy using a buffersize. here i am using a beffer size=1024
copyStream(inputStream, outputStream, 1024);
outputStream.close();
inputStream.close();
}
/*copy an inputStream to an OutputStream using a specific buffer size*/
public static OutputStream copyStream(InputStream is, OutputStream os, int buffer_size) throws IOException{
byte[] bytes = new byte[buffer_size];
for (; ; ) {
// Read byte from input stream
int count = is.read(bytes, 0, buffer_size);
if (count == -1)
break;
// Write byte to output stream
os.write(bytes, 0, count);
}
return os;
}
中的Application_Start()
来修复了此问题:
Global.asax