Deployment 将包含MDF文件的项目部署到外部计算机

Deployment 将包含MDF文件的项目部署到外部计算机,deployment,project,external,mdf,Deployment,Project,External,Mdf,基本上,我有一个Windows窗体应用程序,其中包含一个dataGridView,数据源是一个名为VoRteXData.MDF的MDF文件。现在,我需要将其部署到外部位置。对于我的表单代码,它包括: private void Form1_Load(object sender, EventArgs e) { SqlConnection sqlCon = new SqlConnection(); sqlCon.ConnectionString = @"

基本上,我有一个Windows窗体应用程序,其中包含一个dataGridView,数据源是一个名为VoRteXData.MDF的MDF文件。现在,我需要将其部署到外部位置。对于我的表单代码,它包括:

    private void Form1_Load(object sender, EventArgs e)
    {
        SqlConnection sqlCon = new SqlConnection();
        sqlCon.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Moderator\Documents\VoRteXData.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
        sqlCon.Open();
        SqlDataAdapter sda = new SqlDataAdapter("select * from VoRteXBanTable", sqlCon);
        DataTable dt = new DataTable();
        sda.Fill(dt);
        dataGridView1.DataSource = dt;
    }

    private void button1_Click(object sender, EventArgs e)
    {
        string searchFilter = textBox1.Text;

        for (int i = 0; i < dataGridView1.Rows.Count; i++)
        {
            if (dataGridView1.Rows[i].Cells[0].Value.ToString() == searchFilter)
            {
                dataGridView1.Rows[i].Selected = true;
                dataGridView1.Rows[i].Visible = true;
            }
            else
            {
                dataGridView1.CurrentCell = null;
                dataGridView1.Rows[i].Visible = false;
                dataGridView1.Rows[i].Selected = false;
            }
        }
    }
}
private void Form1\u加载(对象发送方,事件参数e)
{
SqlConnection sqlCon=新的SqlConnection();
sqlCon.ConnectionString=@“数据源=。\SQLEXPRESS;AttachDbFilename=C:\Users\mediator\Documents\VoRteXData.mdf;集成安全性=True;连接超时=30;用户实例=True”;
sqlCon.Open();
SqlDataAdapter sda=新SqlDataAdapter(“从VoRteXBanTable中选择*”,sqlCon);
DataTable dt=新的DataTable();
sda.填充(dt);
dataGridView1.DataSource=dt;
}
私有无效按钮1\u单击(对象发送者,事件参数e)
{
字符串searchFilter=textBox1.Text;
对于(int i=0;i

接下来,在我的MDF文件中有一个表和5个字段,大约有50条记录。将项目发布到外部计算机时,我收到一个错误:“在建立到SQL server的连接时发生了与网络相关或特定于实例的错误。找不到或无法访问该服务器。请验证实例名称是否正确,以及SQL server是否配置为允许远程连接”。但是,我没有使用SQLServerManagementStudio,因为我需要在没有主机的外部位置部署它。我不想让用户安装所有SQL必备组件,因为这太荒谬了。那么有没有办法让C#运行这个MDF文件呢?或者您可以免费将其上传到web?

客户端计算机必须安装SQL Server Express。您可以将其作为先决条件包含在setup.exe中。这将只安装数据库引擎。但是,如果不希望客户端计算机安装SQL Server Express,则需要将应用程序更改为使用SQL Server Compact。这样,它就不需要在客户端上安装SQL Server实例