原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/08/30/mvc4_vs2012_login_member_db.aspx

原本是在MSDN论坛上看见的问题

因为写书过程中也遇见了,不能解。

就发信请微软技术支持团队帮忙

隔了很久,他们很热心地追踪这个问题,也一直来电讨论、报告进度。

希望这份问与答,对大家有帮助。

让这份信息分享出来,能发挥更多力量。

==================================================================================

问题定义:

使用Win 7 + VS 2012 Ultimate (Update 2版) + SQL 2012 Express(SP1),选取ASP.NET MVC 4 专案(Project),完整专案(不是「空」专案)。

点选上方「专案」Menu =>「 ASP.NET组态」,设定Login会员数据库。

在「 ASP.NET组态」网页画面上,加入账号、群组(角色)之后,

[问题一]:我发现项目的/bin目录下,竟然出现旧版的ASPNETDB.MDF数据库档案。

而非 Web.config文件里面,预设的联机字符串(应该使用SQL 2012 Express版的LocalDB才对)。理论上,应该是aspnet-WebSite3-20130507194034.mdf档案。

<connectionStrings>

<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-WebSite3-20130507194034;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-WebSite3-20130507194034.mdf" />

</connectionStrings>

[问题二]:此时,我按下上方的绿色三角按钮(Play)建构专案。

预设的ASP.NET MVC 4项目,执行成果(网页右上方)会有「注册」功能。

我注册一个新的账号以后,很奇怪的!这个账号却会跑进SQL 2012 LocalDB里面。也就是aspnet-WebSite3-20130507194034.mdf。

综合上面两个问题,我在同一个MVC 4「项目」里面,产生的 Login会员数据,

却分别存于/bin目录下「两套」数据库里面。

似乎不合理。

....................................................................

我自己测试:

(1). 打开一个「网站」,ASP.NET MVC4的网站,就不会有这样的错误了。也就是错误只发生在「项目」里面。

(2).在「项目」里面,即使我设定了 C:\Windows\Microsoft.NET目录下的 aspnet_regsql.exe,输入SQL 2012的LocalDB连结字符串(如(LocalDb)\v11.0),仍无法把上面(问题一)的Login数据库导回SQL 2012 LocalDB里面,一样会出现「项目」的 /bin目录下--两套数据库档案,分别存放不同的登入账号。

因为MVC 4项目太大,无法上传给您参考。

我并没有撰写新的程序代码,只是「新增」一个MVC 4项目,就发现问题了。VB / C#两种语法都测试过。

P.S. VS 2012 Update 1~3版都有一样的情况。

==================================================================================

问题分析:

因为Visual Studio 2012在安装的时候,会将LocalDB的功能也一同安装进去,让在没有安装SQL Express 2012的环境也能使用这个功能。

另外,ASP.NET Configuration开启的是C:\Windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles底下的网站:

他会读取C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config里面的连接字符串设定:

<connectionStrings>

<add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>

</connectionStrings>

这个部分和MVC4项目web.config使用的连接字符串是不同的:

<connectionStrings>

<add name="LocalSqlServer" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcApplication2-20130517155009;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-MvcApplication2-20130517155009.mdf" providerName="System.Data.SqlClient" />

</connectionStrings>

这是导致项目底下出现 旧版aspnetdb.mdf的主因。

[Q&A]VS 2012 MVC4专案与网站的差异?「ASP.NET组态」的Login账号出现在「新旧两组」会员数据库里面?的更多相关文章

  1. visual studio 2012打开提示 未能将网站×××配置为使用 ASP.NET 4.5 和 尚未在Web服务器上注册,您需要手动将Web服务器配置为使用ASP.NET 4.5

    未能将网站×××配置为使用 ASP.NET 4.5.为了使此网站正确运行,您必须将它手动配置为使用ASP.NET 4.5. ASP.NET 4.5尚未在Web服务器上注册,您需要手动将Web服务器配置 ...

  2. Asp.Net MVC4开发二: Entity Framework在Asp.Net MVC4中的应用

    ORM作为一种数据库訪问机制已广泛地应用于各种项目其中,在.Net开发中,应用比較广泛的ORM框架大致有以下几个: 官方支持的有:Linq to SQL.Entity Framework.三方的有:N ...

  3. 目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行、国家安全等行业领域

    目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行.国家安全等行业领域. 要求建设开发大型复杂的网站,但仅有一个idea,不能够提供网站详 ...

  4. 我在开发网站后得出的asp.Net网站优化总结

    原文:我在开发网站后得出的asp.Net网站优化总结 asp.Net网站优化总结: 1.数据库优化: 首先是对查询语句的优化,开发时为了图快可以不考虑,但是后期维护时就必须要优化(比如:你调用代码生成 ...

  5. 【转载】ASP.NET网站选购阿里云服务器的时候,阿里云账号个人认证以及企业认证有何不同

    在采购阿里云产品,如阿里云云服务器.阿里云短信包.阿里云数据库MySql以及Sqlserver.阿里云对象存储OSS等云产品的时候,如果账号未进行实名认证,很多时候会要求实名认证操作,在实名认证时可选 ...

  6. Windows server 2012配置WebDeploy发布网站

    以前都是使用win2008r2服务器,最近更新了操作系统到WINDOWS 2012,发现以前的做法已经不适用了. win2008r2配置WebDeploy: https://www.cnblogs.c ...

  7. [Windows Server 2012] 手工创建安全网站

    ★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:手工创建安全站 ...

  8. [网站性能2]Asp.net平台下网站性能调优的实战方案

    文章来源:http://www.cnblogs.com/dingjie08/archive/2009/11/10/1599929.html 前言    最近帮朋友运营的平台进行了性能调优,效果还不错, ...

  9. 【网站国际化必备】Asp.Net MVC 集成Paypal(贝宝)快速结账 支付接口 ,附源码demo

    开篇先给大家讲段历史故事,博主是湖北襄阳人.襄阳物华天宝,人杰地灵,曾用名襄樊.在2800多年的历史文化中出现了一代名相诸葛亮(卧龙),三国名士庞统(凤雏),魏晋隐士司马徽(水镜先生),唐代大诗人孟浩 ...

随机推荐

  1. 初识btrace

    此文已由作者易国强授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1 btrace简介 BTrace是一个非常不错的java诊断工具.BTrace 中的B表示bytecode ...

  2. jquery冲突的关键字nodeName、nodeValue和nodeType!

    原文:http://blog.csdn.net/hdfyq/article/details/52805836 [缘由]在工作流数据库设计的时候,  都节点管理的功能.  结果有2个字段为  NODE_ ...

  3. 如何有效提升Unity Gear VR游戏性能

    http://www.vr186.com/vr_news/vr_technical_area/1093.html 好的,所以你决定用 Unity 来做一个 VR 游戏,并选定了三星 Gear vr 为 ...

  4. day02 多态

  5. [JSOI2015]染色游戏

    Description 棋盘是一个n×m的矩形,分成n行m列共n*m个小方格. 现在萌萌和南南有C种不同颜色的颜料,他们希望把棋盘用这些颜料染色,并满足以下规定: 1.棋盘的每一个小方格既可以染色(染 ...

  6. 牛客寒假6-J.迷宫

    链接:https://ac.nowcoder.com/acm/contest/332/J 题意: 你在一个 n 行 m 列的网格迷宫中,迷宫的每一格要么为空,要么有一个障碍. 你当前在第 r 行第 c ...

  7. Hive_Hive的数据模型_内部表

    Hive的数据模型_内部表 - 与数据库中的Table在概念上是类似.- 每一个Table在Hive中都有一个相应的目录存储数据.- 所有的Table数据(不包括External Table)都保存在 ...

  8. 用注解@DelcareParents实现引用增强

    引用增强,是一个比较特殊的增强,不同于其他方法级别的增强. 引用增强可以实现:一个Java类,没有实现A接口,在不修改Java类的的情况下,使其具备A接口的功能. 先看看背景,我们有个Love接口: ...

  9. C++ Sort类成员的传递

    C++模板中提供了sort方法,一般有两种方法:传递函数,传递一个对象. 第一种方法:函数 bool compare(const string &strLeft, const string & ...

  10. D. Caesar's Legions 背包Dp 递推DP

    http://codeforces.com/problemset/problem/118/D 设dp[i][j][k1][k2] 表示,放了i个1,放了j个2,而且1的连续个数是k1,2的连续个数是k ...