我在Visual Studio 2013中有一个使用Razor语法的小型ASP.NET MVC4项目。它是一家虚构的私人飞机租赁公司的网站。
目前在我的网站上我有:
log-in/ register
功能(允许用户登录/注册网站)admin@admin.com
用户可以看到此内容且能够edit/ create new/ delete
个用户)这是我的项目文件的Gist
:https://gist.github.com/anonymous/3528ab17e13c6d5b2460
这是我当前的SystemUsers
表格的样子:
http://gyazo.com/c5013d885723eae7bf578e01cbe1a39c
CREATE TABLE [dbo].[SystemUsers] (
[Email] NVARCHAR (50) NOT NULL,
[Password] NVARCHAR (MAX) NOT NULL,
[PasswordSalt] NVARCHAR (MAX) NOT NULL,
[FirstName] NVARCHAR (MAX) NOT NULL,
[Surname] NVARCHAR (MAX) NOT NULL,
[Age] INT NOT NULL,
[MobileNumber] NVARCHAR (12) NOT NULL,
[HomeNumber] NVARCHAR (12) NOT NULL,
PRIMARY KEY CLUSTERED ([Email] ASC)
);
这是FLightsTable
的样子:
http://gyazo.com/891bc17d709bdac4f5bfb443ffe6c5a3
CREATE TABLE [dbo].[FlightsTable] (
[FlightID] INT NOT NULL,
[Departure] NVARCHAR (50) NOT NULL,
[Arrival] NVARCHAR (50) NOT NULL,
[NumberOfSeats] INT NOT NULL,
[NumberOfFlights] INT NOT NULL,
PRIMARY KEY CLUSTERED ([FlightID] ASC)
);
为了将flight
分配给user
我假设我必须在我的数据库中创建一个新表并存储用户Email
+ {{1 }}?如果是这样,我如何从两个表中检索此信息并将其放入我的新表中?
我希望用户能够选择航班并预订,这意味着航班上的空间数量会减少。
将声明此操作(意味着从两个表中获取信息并将其存储到单独的表中)的位置?为了实现这一目标,我需要创建哪些附加文件?
答案 0 :(得分:0)
是的,航班预订的链接表似乎是合适的,两个表中的主键在多对多的关系中。您可能还需要有关此表中特定预订的其他信息,例如预订座位数,预订日期,使用信用卡,应用折扣优惠券等。
当客户预订航班时,您可以向此表添加行。
您可以在显示客户预订时查看此表中的行数,或确定航班上剩余的座位数(例如:availableSeats = Flight.NumberOfSeats - bookings.Where(b => b.FlightId == Flight.FlightId).Select(b => b.NumberOfSeats).Sum();
)。
当客户想要修改/取消预订或取消航班时,您将更新此表中的行。