【问题标题】:where is data stored?数据存储在哪里?
【发布时间】:2011-06-02 02:01:28
【问题描述】:

我正在使用 mvc3 在 .net 4.0 中设计一个项目。我正在使用两个属性 namefname(父亲姓名)。

我的控制器类:

loginController.cs

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Entity;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcMovie.Models;

namespace MvcMovie.Controllers
{ 
    public class loginController : Controller
    {
        private logindata db = new logindata();

        //
        // GET: /login/

        public ViewResult Index()
        {
            return View(db.loginobj.ToList());
        }

        //
        // GET: /login/Details/5

        public ViewResult Details(int id)
        {
          //  login login = db.loginobj.Find(id);
            login login = db.loginobj.Find(2) ;
            return View(login);
        }

        //
        // GET: /login/Create

        public ActionResult Create()
        {
            return View();
        } 

        //
        // POST: /login/Create

        [HttpPost]
        public ActionResult Create(login login)
        {
            if (ModelState.IsValid)
            {
                db.loginobj.Add(login);
                db.SaveChanges();
                return RedirectToAction("Index");  
            }

            return View(login);
        }
        
        //
        // GET: /login/Edit/5
 
        protected override void Dispose(bool disposing)
        {
            db.Dispose();
            base.Dispose(disposing);
        }
    }
}

模型类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
login.cs

namespace MvcMovie.Models
{
    public class login
    {
        public int ID { get; set; }
        public string name{get; set;}
        public string fname { get; set; }
    }
    public class logindata : DbContext
    {
        public DbSet<login> loginobj { get; set; }
    }
}

view.cshtml

@model IEnumerable<MvcMovie.Models.login>

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>

<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table>
    <tr>
        <th>
            name
        </th>
        <th>
            fname
        </th>
        <th></th>
    </tr>

@foreach (var item in Model) {
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.name)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.fname)
        </td>
        <td>
            @Html.ActionLink("Edit", "Edit", new { id=item.ID }) |
            @Html.ActionLink("Details", "Details", new { id=item.ID }) |
            @Html.ActionLink("Delete", "Delete", new { id=item.ID })
        </td>
    </tr>
}

</table>

我想问一下,我创建的数据存储在哪里?表示我如何才能看到由我完成的条目表?

每当我点击 .sdf 文件时,就会出现如下图所示的问题,我应该怎么做才能解决这个问题。我应该安装什么东西吗?我安装了 Visual Studio 2010 和 sql server 2008。

【问题讨论】:

  • Pushpendra - 无需复制相同的评论三次 :) 简单的谷歌搜索“这不是有效的 SQL Server Compact 数据库文件或当前 SQL Server Compact 引擎不支持此文件版本" 将我们作为第一个结果将我们带到解决方案:*.com/questions/4070860/…

标签: c# .net database asp.net-mvc-3


【解决方案1】:

您可能正在使用 Microsoft SQL CE 来存储您的应用程序数据。如果是这种情况,请查看解决方案资源管理器中的 App_Data 文件夹。您应该在那里看到一个扩展名为 .sdf 的文件。只需确保在解决方案资源管理器中选择显示所有文件图标。更多详情here.

【讨论】:

  • 先生,每当我单击 .sdf 文件时,就会出现此错误“这不是有效的 SQL Server Compact 数据库文件或当前 SQL Server Compact 引擎不支持此文件版本。”请建议我该怎么做。?
  • 检查这个:*.com/questions/4070860/… - 所以,我认为您必须安装 Visual Studio SP1 才能在 Visual Studio 中获得对 SQL CE 4 的工具支持。在这里下载:microsoft.com/downloads/en/…
【解决方案2】:

您将需要安装 Visual Studio SP1,因为您正在运行的教程认为您正在使用 Visual Studio Express。

你可以在这里得到它:

http://www.microsoft.com/web/gallery/install.aspx?appsxml=&appid=VS2010SP1Pack

【讨论】:

    【解决方案3】:

    它看起来已经完成了

    私人登录数据 db = new 登录数据();

    你有这部分的详细信息吗?

    【讨论】:

    • 先生,每当我单击 .sdf 文件时,就会出现此错误“这不是有效的 SQL Server Compact 数据库文件或当前 SQL Server Compact 引擎不支持此文件版本。”请建议我该怎么做。?
    【解决方案4】:

    那个 logindata DBContext 看起来像是由实体框架创建的。那是指向某处的数据库,而该数据库是您查找数据的地方。您可以在 web.config 中查找包含数据库信息的连接字符串,或者如果您的项目中有一个 .edmx 文件,请打开该文件并查看其指向的内容。

    【讨论】:

    • 先生,每当我单击 .sdf 文件时,就会出现此错误“这不是有效的 SQL Server Compact 数据库文件或当前 SQL Server Compact 引擎不支持此文件版本。”请建议我该怎么做?