小编Kev*_*nde的帖子

使用EF6加载数据库初始化程序时出错

我一直在努力学习这个教程... http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/creating-an-entity-framework-data-model-for -an-asp-net-mvc-application但我一直收到以下错误...

system.invalidoperationexception = {"无法为应用程序配置中指定的DbContext类型'WeddingPreparations.Dal.WeddingContext'设置'WeddingPreparations.Dal.WeddingInitializer,KevinLisaWedding'类型的数据库初始化程序.有关详细信息,请参阅内部异常."}

内在的例外是......

{"无法从程序集'EntityFramework,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'加载类型'WeddingPreparations.Dal.WeddingContext'.":"WeddingPreparations.Dal.WeddingContext"}

堆栈跟踪是......

   at System.Data.Entity.Internal.InitializerConfig.TryGetInitializer(Type requiredContextType, String contextTypeName, String initializerTypeName, Boolean isDisabled, Func`1 initializerArgs, Func`3 exceptionMessage)
   at System.Data.Entity.Internal.InitializerConfig.<>c__DisplayClass6.<TryGetInitializerFromEntityFrameworkSection>b__1(ContextElement e)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at System.Data.Entity.Internal.InitializerConfig.TryGetInitializerFromEntityFrameworkSection(Type contextType)
   at System.Data.Entity.Internal.InitializerConfig.TryGetInitializer(Type contextType)
   at System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.GetServiceFactory(Type type, String name)
   at System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.<>c__DisplayClass1.<GetService>b__0(Tuple`2 t)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at System.Data.Entity.Infrastructure.DependencyResolution.AppConfigDependencyResolver.GetService(Type type, Object key)
   at System.Data.Entity.Infrastructure.DependencyResolution.ResolverChain.<>c__DisplayClass3.<GetService>b__0(IDbDependencyResolver r)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at System.Data.Entity.Infrastructure.DependencyResolution.ResolverChain.GetService(Type type, Object key)
   at System.Data.Entity.Infrastructure.DependencyResolution.CompositeResolver`2.GetService(Type …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework ef-migrations entity-framework-6

14
推荐指数
1
解决办法
1万
查看次数

以自动方式在Jenkins/Hudson中运行单元测试,从dev到构建服务器

我们目前正在运行Jenkins(Hudson)CI服务器来构建和打包我们的.net Web项目和数据库项目.一切都很好但我想开始编写单元测试,然后只有在单元测试通过时才传递构建.我们使用内置的msbuild任务来构建Web项目.有以下论点......

MsBuild Version           .NET 4.0
MsBuild Build File    ./WebProjectFolder/WebProject.csproj  
Command Line Arguments    ./target:Rebuild /p:Configuration=Release;DeployOnBuild=True;PackageLocation=".\obj\Release\WebProject.zip";PackageAsSingleFile=True
Run Code Online (Sandbox Code Playgroud)

我们需要在我们的代码上运行自动化测试,这些代码在我们的机器上构建时可能会自动运行(可能是构建后事件),但是当Jenkins为该项目构建时也会运行.

如果你这样运行它不会构建单元测试项目,因为web项目不引用测试项目.测试项目将引用Web项目,但我很确定这将是我们的自动构建,因为它们主要用于构建和打包我们的部署.运行这些测试应该是自动构建和打包过程中的一个步骤.

选项......

  1. 创建两个Jenkins作业.一个运行测试...如果测试通过另一个构建被触发,它构建和打包Web项目.将post build事件放在测试项目上.
  2. 构建解决方案而不是项目(确保解决方案包含所需的测试)并将post构建事件放在任何将运行nunit控制台以运行测试的测试项目上.然后使用命令行将每个bin和content目录中的所有必需文件复制到一个包中.
  3. 只需在jenkins中构建测试项目,而不是在jenkins中构建Web项目.测试项目将引用Web项目(取决于您正在测试的内容)并构建它.

问题 ...

  1. 有两个工作,而不是一个.调试两件事而不是一件.一个是看测试是否通过,一个是构建和编译Web项目.测试可以通过,但如果你正在测试的东西没有使用它,那么构建可能会失败...
  2. 这要求我们确切地知道构建的内容.现在,msbuild为我们做了一切.如果每次创建额外的文件夹时有多个团队正在处理项目,则必须担心可能脆弱的命令行语句.
  3. 这似乎是我们主要目的的腐败.测试应该是这个过程中的一个步骤,而不是这个过程中最重要的事情.我也不是100%确定触发的构建与普通构建相同,它是否与普通构建完全相同.以相同的方式移动所有正确的文件将它们全部移动到相同的目录等.

最初的问题.

我们希望在构建主项目时运行测试.但是,对于针对测试项目运行的Web项目添加后期构建事件不起作用,因为Web项目不引用测试项目并且不会触发此项目的构建.我可以继续...但这就够了......

我们花了大约一个星期试图使这项工作很好但没有成功.如果您觉得可以获得更好的回复,请随意编辑此内容...

continuous-integration automated-tests hudson jenkins

8
推荐指数
1
解决办法
1万
查看次数

Classic asp - 如何自动部署 - 在持续集成环境中

我一直在做一些阅读http://vishaljoshi.blogspot.com/2010/11/team-build-web-deployment-web-deploy-vs.htmlhttps://michaelbaylon.wordpress.com/2011/04/13/manage-sql-scripts-and-continuous-integration / ...等自动部署和持续集成等等但不是它似乎谈论在经典的asp环境中自动部署,你不能真正做到正确的CI除非你进入自动部署.

MSDeploy可以部署一个经典的asp网站吗?如果不是......最好只编写一个构建脚本,将所有文件复制到正确的文件夹,然后启动IIS?我已经使用msbuild和robocopy msbuild扩展任务完成了这项工作.但是你如何处理不同的环境(QA,dev,staging,production)没有web配置来放置不同的连接字符串等...据说msbuild是配置感知...但是当没有web时它是如何工作的配置?

因此,对于所有这些问题,我正在努力为我们的经典asp网站创建部署脚本/模块/ exe.有没有人有任何答案/资源/进一步的问题,他们可以指向我的方向?

continuous-integration automated-deploy asp-classic msdeploy

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

linq查询匿名类型无法转换为POCO对象

我有以下linq查询...

public List<UserProject> GetProjectsByUser(int userid)
{
    //var query =
    return (
               from p in this.Entities.Projects
               join c in this.Entities.Categories 
                   on p.CategoryId equals c.CategoryId
               join u in this.Entities.Users 
                   on p.UserId equals u.UserId
               where p.UserId == 11
               select
                   new
                       {
                           p.ProjectId,
                           u.UserName,
                           p.UserId,
                           ProjectName = p.Name,
                           ProjectDescription = p.Description,
                           CategoryName = c.Name
                       }
               into pcup
               join m in this.Entities.Messages
                   on
                   pcup.ProjectId equals m.ProjectId
                   into pm
               select
                   new {
                       pcup.ProjectId, 
                       pcup.UserId, 
                       pcup.ProjectName, 
                       pcup.ProjectDescription, 
                       Messages = pm
                   }
           ).ToList<UserProject>();
}
Run Code Online (Sandbox Code Playgroud)

我有以下视图对象,我试图填充....

public class UserProject …
Run Code Online (Sandbox Code Playgroud)

linq entity-framework linq-to-sql

6
推荐指数
1
解决办法
9173
查看次数