小编Aug*_*gan的帖子

在生产环境中使用DropCreateDatabaseIfModelChanges

我刚刚开始学习.NET MVC,所以这可能是一个愚蠢的问题,但我还没有找到一个好的答案.

我正在遵循Code First方法,使用Entity Framework为我构建我的数据库.我在Application_Start()方法中包含以下内容,以便允许我通过更改Model对象来编辑数据库.

Database.SetInitializer<ContactManagerDB>(new DropCreateDatabaseIfModelChanges<ContactManagerDB>());
Run Code Online (Sandbox Code Playgroud)

我只是想知道如果我将此应用程序推送到生产环境然后对我的模型进行一些更改然后更新应用程序会发生什么?这真的会丢失并在生产环境中重新创建数据库吗?

将变更推向生产环境的最佳做法是什么?使用Code First方法?

asp.net-mvc-3

15
推荐指数
2
解决办法
8851
查看次数

使用Optaplanner解决VRPTWPD

我是optaplanner的新手,我希望用它来解决拾取和交付的VRPTW问题(VRPTWPD).

我首先从示例repo中获取VRPTW代码.我想添加它来解决我的问题.但是,我无法返回一个符合优先级/车辆限制的解决方案(必须在交付之前完成拾取,并且两者必须由同一车辆完成).

我一直在返回一个解决方案,其中硬分数是我期望的这样一个解决方案(即我可以在一个小样本问题中加起来所有违规,并看到硬分数与我为这些违规分配的处罚相匹配).

我尝试的第一种方法是遵循Geoffrey De Smet在此处概述的步骤 - /sf/answers/1336104731/

每个Customer都有一个变量customerType,描述它是一个皮卡(PU)还是一个交付(DO).它还有一个名为变量的变量parcelId,用于指示要拾取或交付的包裹.

我在Customer命名中添加了一个阴影变量parcelIdsOnboard.这是一个HashSet,它包含了驾驶员在访问给定时所拥有的所有parcelId Customer.

VariableListener保持parcelIdsOnboard更新的我看起来像这样:

public void afterEntityAdded(ScoreDirector scoreDirector, Customer customer) {
    if (customer instanceof TimeWindowedCustomer) {
        updateParcelsOnboard(scoreDirector, (TimeWindowedCustomer) customer);
    }
}

public void afterVariableChanged(ScoreDirector scoreDirector, Customer customer) {
    if (customer instanceof TimeWindowedCustomer) {
        updateParcelsOnboard(scoreDirector, (TimeWindowedCustomer) customer);
    }
}

protected void updateParcelsOnboard(ScoreDirector scoreDirector, TimeWindowedCustomer sourceCustomer) {
    Standstill previousStandstill = sourceCustomer.getPreviousStandstill();
    Set<Integer> parcelIdsOnboard = (previousStandstill instanceof …
Run Code Online (Sandbox Code Playgroud)

java drools optaplanner

13
推荐指数
1
解决办法
1300
查看次数

使用谷歌应用引擎上传和解析csv文件

我想知道是否有人对python和gae有更好的理解可以帮助我.我正在将一个csv文件从表单上传到gae数据存储区.

class CSVImport(webapp.RequestHandler):
  def post(self):
     csv_file = self.request.get('csv_import')
     fileReader = csv.reader(csv_file)
     for row in fileReader:       
       self.response.out.write(row) 
Run Code Online (Sandbox Code Playgroud)

我遇到了其他人在这里提到的问题 - http://groups.google.com/group/google-appengine/browse_thread/thread/bb2d0b1a80ca7ac2/861c8241308b9717

也就是说,csv.reader迭代每个字符而不是行.一位谷歌工程师留下了这样的解释:

调用self.request.get('csv')返回一个String.迭代字符串时,迭代字符而不是行.你可以在这里看到差异:

 class ProcessUpload(webapp.RequestHandler): 
   def post(self): 
     self.response.out.write(self.request.get('csv')) 
     file = open(os.path.join(os.path.dirname(__file__), 'sample.csv')) 
     self.response.out.write(file) 

     # Iterating over a file 
     fileReader = csv.reader(file) 
     for row in fileReader: 
       self.response.out.write(row) 

     # Iterating over a string 
     fileReader = csv.reader(self.request.get('csv')) 
     for row in fileReader: 
       self.response.out.write(row) 
Run Code Online (Sandbox Code Playgroud)

我真的不遵循解释,并没有成功实施它.任何人都可以提供更明确的解释和建议的修复?

谢谢,八月

python csv google-app-engine

7
推荐指数
2
解决办法
7864
查看次数

整数级联c

我正在尝试连接两个uint32_t并返回一个uint64_t.这是我的方法

uint64_t concat_int1_int2 (uint32_t int1, uint32_t int2) {
  uint64_t concatenated = int1;
  return concatenated << 32 | int2;
}
Run Code Online (Sandbox Code Playgroud)

这似乎非常缓慢(我需要做到这一点~1,000,000次,需要约6分钟).两个问题,为什么位移需要这么长时间(这似乎是限制步骤),有没有人建议更快的方法来做到这一点?

c

7
推荐指数
1
解决办法
751
查看次数

将数据库添加到App_Data文件夹

我最近刚开始学习.NET,更具体地说,我一直在玩MVC框架而且非常喜欢它.我遇到了一个令人沮丧的问题.我无法将数据库添加到App_Data文件夹中.

我正在我的机器上运行SQL Server 2008 R2.当我向App_Data文件夹添加一个新数据库时,我收到一条消息"连接到SQL Server数据库文件(.mdf)需要安装并运行SQL Server 2008 Express.我做了一点探讨,并发现此博客文章描述如何使用mvc3设置常规SQL Server数据库.(http://blogs.lessthandot.com/index.php/WebDev/ServerProgramming/ASPNET/setting-up-sql-server-with-asp-net-mvc)

这工作得很好,但在我尝试将新创建的数据库添加到App_Data文件夹后,我只是得到一个"访问被拒绝".错误.我是我的机器上的管理员,我可以使用SQL Server Management Studio访问数据库.

谁知道我做错了什么?

asp.net-mvc-3

4
推荐指数
1
解决办法
7075
查看次数

Pythonic方式执行大型案例/开关

我很确定这是Python中一个非常基本的概念,如果有人可以帮助我理解如何以pythonic/clean方式执行以下操作,我会很高兴.我真的很喜欢编码,所以我只是举个例子.我认为我要做的事情显而易见.

for textLine in textLines:
   foo = re.match('[1-100]', thing)
   if foo:
     list = db.GqlQuery("SELECT * FROM Bar").fetch(100)
     if thing == '1':
       item = list[0]
     elif thing == '2':
       item = list[1]
     elif thing == '3':
       item = list[2]
     .
     .
     .
     elif thing == '100':
       item = list[99]
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!

python

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

标签 统计

asp.net-mvc-3 ×2

python ×2

c ×1

csv ×1

drools ×1

google-app-engine ×1

java ×1

optaplanner ×1