2016-05-09 5 views
0

Ich versuche, Formularvariablen in eine Datenbank zu setzen, aber ich bin immer noch sehr neu bei diesen Dingen und ich versuche nur zufällige Kopie eingefügt Code aus dem Internet zu lernen. Das ist das einzige, was gibt mir Probleme'System.Data.SqlClient.SqlException' Wie zu beheben? Visual Studio 2015

@using WebMatrix.Data; 
@using WebMatrix.WebData; 
@using System.Data.SqlClient; 


@{ 
    ViewBag.Title = "Recruta"; 

} 

@{ 

    var Nome = ""; 
    var Email = ""; 
    var Tel = ""; 
    var Adress = ""; 
    var Gender = ""; 

    Nome = Request.Form["Nome"]; 
    Email = Request.Form["Email"]; 
    Tel = Request.Form["Tel"]; 
    Adress = Request.Form["Adress"]; 
    Gender = Request.Form["Gender"]; 

    var db = Database.Open("Usuarios"); 
    var insertCommand = "INSERT INTO Usuarios (Nome, Email, Tel, Adress, Gender) Values(@0, @1, @2, @3, @4)"; 
    db.Execute(insertCommand, Nome, Email, Tel, Adress, Gender); 
    Response.Redirect("~/Usuarios"); 
     } 

Dies ist die Information von vs gegeben ist:

An exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll but was not handled in user code 

Additional information: The database 'c:\users\softinsa\documents\visual studio 2015\Projects\Best_prototype_01\Best_prototype_01\App_Data\Usuarios.mdf' cannot be opened because it is version 851. This server supports version 706 and earlier. A downgrade path is not supported. 

Cannot attach the file 'c:\users\softinsa\documents\visual studio 2015\Projects\Best_prototype_01\Best_prototype_01\App_Data\Usuarios.mdf' as database 'c:\users\softinsa\documents\visual studio 2015\Projects\Best_prototype_01\Best_prototype_01\App_Data\Usuarios.mdf'. 

Und das ist, wo der Fehler liegt offenbar:

db.Execute(insertCommand, Nome, Email, Tel, Adress, Gender); 

ich entschuldige mich, wenn Ich posten eine dumme Frage, wie ich schon sagte, ich bin immer noch sehr frisch in asp.net und es ist Bestrebungen.

Ich schätze es, Sie lesen dies und hoffentlich können Sie helfen.

EDIT: Ich habe versucht, die Lösungen mit auf The database cannot be opened because it is version 782. This server supports version 706 and earlier. A downgrade path is not supported und keiner von ihnen arbeitete für mich, ich sind die Verbindungen durch Standard VS Community Edition 2015 mit bereits (LocalDB) \ MSSQLLocalDB so dass nicht ist das Problem hier.

Antwort

2

Zuerst Code nie Geschäftslogik innerhalb Ihrer ASP.NET MVC Ansichten.

Zweitens ist die Ausnahme ganz klar:

Die Datenbank ‚...‘ kann nicht geöffnet werden, da es sich um Version 851. Diese Serverversion 706 und früher unterstützt. Ein Downgrade-Pfad wird nicht unterstützt.

Sie haben nicht die richtige Version von SQL Server auf diesem System ausgeführt. Sie versuchen, eine neuere Version des Datenbankdateiformats zu öffnen, als Sie installiert haben. Installieren Sie die richtige Version von SQL Server, oder stufen Sie das Datenbankdateiformat herunter.

Diese might be related für Ihre Verwendung von Visual Studio 2015 Update 2.

+0

Es ist WebMatrix, sie [ermutigt tatsächlich Logik setzt in Ansichten in ihren Tutorials] (http://www.asp.net/web-pages/overview/Daten/5-Arbeiten-mit-Daten). Außerdem verwenden die MVC-Tutorials Entity-Modelle als View-Modelle ... – CodeCaster

+0

Vielen Dank für Ihre Antwort, wie würde ich das Database-Dateiformat herunterstufen? Ich habe keine Ahnung, welche Version von SQL Server ich haben muss, um den Fehler zu beheben, also denke ich, dass Downgrade der sicherere Ansatz wäre. –

+0

Ich denke, dass Sie das von SQL Server Management Studio tun können, wenn Sie es installiert haben. –