Why does my code-first ASP.NET MVC app suddenly not work just because I opened it from another location?












0















I have a code-first ASP.NET MVC app that ran smoothly and was able to access the data from SQL Server until I copied the project over to another location and opened it from there.



I get the following errors:




System.Data.DataException

HResult=0x80131501

Message=An exception occurred while initializing the database. See the InnerException for details.

Source=



StackTrace:



Inner Exception 1:

EntityException: The underlying provider failed on Open.



Inner Exception 2:

SqlException: Database 'C:UsersBICHEDesktopFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' already exists. Choose a different database name.

Cannot attach the file 'C:UsersBICHEDesktopMY REPOS3The-Tech-Academy-C-Coding-ProjectFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' as database 'StudentContextDB'.




My questions are: why does this happen just because I moved the project from my desktop to another location on my computer?



Can this be solved by making an "if" statement that proceeds to use the StudentContextDB if it exists, and creates it if it doesn't? (My instructor suggested this, so I'm thinking I will try this first)



Lastly, if this is the right solution, what would be the syntax for that particular statement? I've seen instructions for Drop and Create, but not Use or Create.



I appreciate any insight people may have on this issue!










share|improve this question

























  • Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

    – FreddieMercury
    Dec 31 '18 at 21:23











  • @FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

    – GMB
    Dec 31 '18 at 21:36
















0















I have a code-first ASP.NET MVC app that ran smoothly and was able to access the data from SQL Server until I copied the project over to another location and opened it from there.



I get the following errors:




System.Data.DataException

HResult=0x80131501

Message=An exception occurred while initializing the database. See the InnerException for details.

Source=



StackTrace:



Inner Exception 1:

EntityException: The underlying provider failed on Open.



Inner Exception 2:

SqlException: Database 'C:UsersBICHEDesktopFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' already exists. Choose a different database name.

Cannot attach the file 'C:UsersBICHEDesktopMY REPOS3The-Tech-Academy-C-Coding-ProjectFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' as database 'StudentContextDB'.




My questions are: why does this happen just because I moved the project from my desktop to another location on my computer?



Can this be solved by making an "if" statement that proceeds to use the StudentContextDB if it exists, and creates it if it doesn't? (My instructor suggested this, so I'm thinking I will try this first)



Lastly, if this is the right solution, what would be the syntax for that particular statement? I've seen instructions for Drop and Create, but not Use or Create.



I appreciate any insight people may have on this issue!










share|improve this question

























  • Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

    – FreddieMercury
    Dec 31 '18 at 21:23











  • @FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

    – GMB
    Dec 31 '18 at 21:36














0












0








0








I have a code-first ASP.NET MVC app that ran smoothly and was able to access the data from SQL Server until I copied the project over to another location and opened it from there.



I get the following errors:




System.Data.DataException

HResult=0x80131501

Message=An exception occurred while initializing the database. See the InnerException for details.

Source=



StackTrace:



Inner Exception 1:

EntityException: The underlying provider failed on Open.



Inner Exception 2:

SqlException: Database 'C:UsersBICHEDesktopFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' already exists. Choose a different database name.

Cannot attach the file 'C:UsersBICHEDesktopMY REPOS3The-Tech-Academy-C-Coding-ProjectFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' as database 'StudentContextDB'.




My questions are: why does this happen just because I moved the project from my desktop to another location on my computer?



Can this be solved by making an "if" statement that proceeds to use the StudentContextDB if it exists, and creates it if it doesn't? (My instructor suggested this, so I'm thinking I will try this first)



Lastly, if this is the right solution, what would be the syntax for that particular statement? I've seen instructions for Drop and Create, but not Use or Create.



I appreciate any insight people may have on this issue!










share|improve this question
















I have a code-first ASP.NET MVC app that ran smoothly and was able to access the data from SQL Server until I copied the project over to another location and opened it from there.



I get the following errors:




System.Data.DataException

HResult=0x80131501

Message=An exception occurred while initializing the database. See the InnerException for details.

Source=



StackTrace:



Inner Exception 1:

EntityException: The underlying provider failed on Open.



Inner Exception 2:

SqlException: Database 'C:UsersBICHEDesktopFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' already exists. Choose a different database name.

Cannot attach the file 'C:UsersBICHEDesktopMY REPOS3The-Tech-Academy-C-Coding-ProjectFinalCSharpChallengeFinalCSharpChallengeApp_DataStudentContextDB.mdf' as database 'StudentContextDB'.




My questions are: why does this happen just because I moved the project from my desktop to another location on my computer?



Can this be solved by making an "if" statement that proceeds to use the StudentContextDB if it exists, and creates it if it doesn't? (My instructor suggested this, so I'm thinking I will try this first)



Lastly, if this is the right solution, what would be the syntax for that particular statement? I've seen instructions for Drop and Create, but not Use or Create.



I appreciate any insight people may have on this issue!







sql-server asp.net-mvc code-first






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 1 at 9:34









marc_s

577k12911141259




577k12911141259










asked Dec 31 '18 at 21:09









FreddieMercuryFreddieMercury

668




668













  • Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

    – FreddieMercury
    Dec 31 '18 at 21:23











  • @FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

    – GMB
    Dec 31 '18 at 21:36



















  • Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

    – FreddieMercury
    Dec 31 '18 at 21:23











  • @FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

    – GMB
    Dec 31 '18 at 21:36

















Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

– FreddieMercury
Dec 31 '18 at 21:23





Thank you for your answer, GMB! By changing the code in this way, to have a relative database location, would it also ensure that other people could run the app if I sent it to them?

– FreddieMercury
Dec 31 '18 at 21:23













@FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

– GMB
Dec 31 '18 at 21:36





@FreddyMercury : since this seems relevant for your use case, I am deleting my comments and posting this as an answer, please accept it if you considers that it properly responds to your question.

– GMB
Dec 31 '18 at 21:36












2 Answers
2






active

oldest

votes


















1















SqlException: Database '...' already exists. Choose a different database name.




It looks like your code is trying to recreate the database... If this is a new deployment, you probably want a new database ; you should modify your code to have a database location which is relative to your application home directory.



The other advantage is that, if you give your application to other people, they will have their database created on their computer under the relative path defined by you, so that will play softly as well.






share|improve this answer
























  • Thanks for your solution, GMB! This is what I need.

    – FreddieMercury
    Dec 31 '18 at 22:05











  • Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

    – FreddieMercury
    Dec 31 '18 at 22:21





















1














Short version here is that the db server still has a reference to the old location of the database. You moved it and tried to fire up the app and point to a new location of the database with the same name. The db server doesn't know how to handle that. It would be better to detach the database from the db server then move the files.






share|improve this answer
























  • Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

    – FreddieMercury
    Dec 31 '18 at 21:21













Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53991440%2fwhy-does-my-code-first-asp-net-mvc-app-suddenly-not-work-just-because-i-opened-i%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









1















SqlException: Database '...' already exists. Choose a different database name.




It looks like your code is trying to recreate the database... If this is a new deployment, you probably want a new database ; you should modify your code to have a database location which is relative to your application home directory.



The other advantage is that, if you give your application to other people, they will have their database created on their computer under the relative path defined by you, so that will play softly as well.






share|improve this answer
























  • Thanks for your solution, GMB! This is what I need.

    – FreddieMercury
    Dec 31 '18 at 22:05











  • Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

    – FreddieMercury
    Dec 31 '18 at 22:21


















1















SqlException: Database '...' already exists. Choose a different database name.




It looks like your code is trying to recreate the database... If this is a new deployment, you probably want a new database ; you should modify your code to have a database location which is relative to your application home directory.



The other advantage is that, if you give your application to other people, they will have their database created on their computer under the relative path defined by you, so that will play softly as well.






share|improve this answer
























  • Thanks for your solution, GMB! This is what I need.

    – FreddieMercury
    Dec 31 '18 at 22:05











  • Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

    – FreddieMercury
    Dec 31 '18 at 22:21
















1












1








1








SqlException: Database '...' already exists. Choose a different database name.




It looks like your code is trying to recreate the database... If this is a new deployment, you probably want a new database ; you should modify your code to have a database location which is relative to your application home directory.



The other advantage is that, if you give your application to other people, they will have their database created on their computer under the relative path defined by you, so that will play softly as well.






share|improve this answer














SqlException: Database '...' already exists. Choose a different database name.




It looks like your code is trying to recreate the database... If this is a new deployment, you probably want a new database ; you should modify your code to have a database location which is relative to your application home directory.



The other advantage is that, if you give your application to other people, they will have their database created on their computer under the relative path defined by you, so that will play softly as well.







share|improve this answer












share|improve this answer



share|improve this answer










answered Dec 31 '18 at 21:34









GMBGMB

13.1k2824




13.1k2824













  • Thanks for your solution, GMB! This is what I need.

    – FreddieMercury
    Dec 31 '18 at 22:05











  • Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

    – FreddieMercury
    Dec 31 '18 at 22:21





















  • Thanks for your solution, GMB! This is what I need.

    – FreddieMercury
    Dec 31 '18 at 22:05











  • Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

    – FreddieMercury
    Dec 31 '18 at 22:21



















Thanks for your solution, GMB! This is what I need.

– FreddieMercury
Dec 31 '18 at 22:05





Thanks for your solution, GMB! This is what I need.

– FreddieMercury
Dec 31 '18 at 22:05













Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

– FreddieMercury
Dec 31 '18 at 22:21







Hi again, GMB--not sure if you'll see this, but I've been looking up how to modify my code to have a database location that is relative to my app's home directory, and am not seeing a guide that is relevant to this exact context. It may be much simpler than I'm making it, but is there a chance you can tell me how to go about this change? Even broad explanation will guide me in the right direction. I apologize if this is really obvious! I'm a bit new to MVC and SQL. Thank you again for your solution!

– FreddieMercury
Dec 31 '18 at 22:21















1














Short version here is that the db server still has a reference to the old location of the database. You moved it and tried to fire up the app and point to a new location of the database with the same name. The db server doesn't know how to handle that. It would be better to detach the database from the db server then move the files.






share|improve this answer
























  • Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

    – FreddieMercury
    Dec 31 '18 at 21:21


















1














Short version here is that the db server still has a reference to the old location of the database. You moved it and tried to fire up the app and point to a new location of the database with the same name. The db server doesn't know how to handle that. It would be better to detach the database from the db server then move the files.






share|improve this answer
























  • Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

    – FreddieMercury
    Dec 31 '18 at 21:21
















1












1








1







Short version here is that the db server still has a reference to the old location of the database. You moved it and tried to fire up the app and point to a new location of the database with the same name. The db server doesn't know how to handle that. It would be better to detach the database from the db server then move the files.






share|improve this answer













Short version here is that the db server still has a reference to the old location of the database. You moved it and tried to fire up the app and point to a new location of the database with the same name. The db server doesn't know how to handle that. It would be better to detach the database from the db server then move the files.







share|improve this answer












share|improve this answer



share|improve this answer










answered Dec 31 '18 at 21:15









John BabbJohn Babb

8771018




8771018













  • Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

    – FreddieMercury
    Dec 31 '18 at 21:21





















  • Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

    – FreddieMercury
    Dec 31 '18 at 21:21



















Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

– FreddieMercury
Dec 31 '18 at 21:21







Thank you for your response, John! I'm looking up how to detach the database right now. I'm concerned though, because I need to send this app to my instructor and he would also have a problem opening it if those files cannot be moved. Is there a way to ensure he could run it on his own machine without problems?

– FreddieMercury
Dec 31 '18 at 21:21




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53991440%2fwhy-does-my-code-first-asp-net-mvc-app-suddenly-not-work-just-because-i-opened-i%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Monofisismo

Angular Downloading a file using contenturl with Basic Authentication

Olmecas