Warum wird meine Tabelle nicht erstellt?

Ich habe diesen Code in meiner Winforms-App, um eine Tabelle in einer vorhandenen Datenbank zu erstelleHie):

private void CreateTables()
{
    string connStr = @"Data Source=
      (LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|
      \AYttFM.mdf;Integrated Security=True";
    using (var connection = new 
System.Data.SqlClient.SqlConnection(connStr))
    {
        try
        {
            connection.Open();
            using (var command = connection.CreateCommand())
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("CREATE TABLE [dbo].[AssignmentHistory] ");
                sb.Append("(");
                sb.Append("[Id] INT NOT NULL PRIMARY KEY, ");
                sb.Append("[WeekOfAssignment] DATE NOT NULL,");
                sb.Append("[TalkType] INT NOT NULL,");
                sb.Append("[StudentID_FK] INT NOT NULL, ");
                sb.Append("[AssistantID_FK] INT NOT NULL, ");
                sb.Append("[CounselPoint] INT NOT NULL");
                sb.Append(")");

                command.CommandText = sb.ToString();
                command.ExecuteNonQuery();
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
}

Es läuft ohne Beanstandung, aber es wird keine Tabelle erstellt. Beim Aktualisieren der Datenverbindung und ihres Tabellenordners im Server-Explorer in Visual Studio Community 2015 werden keine Tabellen angezeigt.

Fehlt mir etwas im obigen Code?

Hinweis: Ich habe den connStr zu Formatierungszwecken über mehrere Zeilen hinweg getrennt. Im eigentlichen Code steht connStr in einer Zeile.

Ich kann auch keine Verbindung zur MDF-Datei über LINQPad herstellen, indem ich "Standard LINQ to SQL" und SQL Server Provider verwende und zur MDF-Datei in meinem Projekt navigiere (C: \ AYttFMApp \ AYttFMScheduler \ AYttFMScheduler \ AYttFM) .mdf). Es sagt mir, dass ein Netzwerkfehler vorliegt:

Ich erhalte die Information, ob ich den Standardserver ". \ SQLEXPRESS" verwende oder ob ich ihn auf meinen Computernamen setze (der einzige Eintrag unter "Servers" im Server-Explorer von Visual Studio).

AKTUALISIERE

Ich habe meinen Laptop neu gestartet, aber es hat nicht geholfen. Die Datenverbindungen des Server-Explorers zeigen auch nach dem Aktualisieren und dem Versuch, eine Verbindung hinzuzufügen, nichts an. Dabei wird der Name meines Computers als Servername verwendet (immerhin heißt das, dass der Server im Server-Explorer vorhanden ist), und es wird die MDF-Datei ausgewählt mir der selbe fehler beim testen der verbindung wie LINQPad.

UPDATE 2

Curiouser and curiouser: Wenn ich jetzt meine App starte und den Code zum Erstellen einer Tabelle erhalte, wird eine Ausnahmemeldung angezeigt, die besagt, dass die AssignmentHistory-Tabelle bereits erstellt wurde. Wenn ich mir den Server-Explorer anschaue, ist der Tabellenordner der Datenbank immer noch leer, obwohl sie selbst wieder verfügbar ist. Wie kann der Tisch da sein und nicht da sein?

Ich frage mich immer noch, ob die in der .mdf-Datei festgelegten Eigenschaften falsch sind. Wie ich in einem Kommentar unten schrieb, sind die Eigenschaften alle Standardeinstellungen: "In Ausgabeverzeichnis kopieren" ist auf "Immer kopieren" und "Aktion erstellen" ist auf "Inhalt" gesetzt. Sollte eine dieser Einstellungen geändert werden?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage