开发者

Database Question (LINQ-to-SQL)

I am currently working on a website where we can track small event for our clients. I am using linq-to-sql and asp.net to build it. So far the site is really small about 10 pages, and only 2 tables, events and clients. I have listed the columns for each table below:

Events:
-eventid
-eventname
-datecreated
-details
-datedue
-status
-clientname (this should be clientid)
-sentemail

Clients:
-clientid
-clientname
-clientemail
-clientphone

the issue I am having is getting the 2 database tables* to work together. Ideally I would like to have clientname replaced with clientid in the Events table.

I had it set up this way before but ran into an issue when listing out the events:

When I am listing out the events I would like it to show the client name as appose to the clientID. Unfortunately I am pretty new to ASP.net and although I could easily do it in PHP have no idea how to get it to work. Its not a huge deal but I would like to be able to update the client list and events apart from one another.

Sorry If thi开发者_如何学编程s makes little to no sense, If there is any confusion I will try to word it better.

*correction on my part


Once you've got your database normalized, create a Linq2Sql context, and then you can write a query similar to this (to get a list of event names and their client names):

var results = from e in dbContext.Events join c in dbContext.Clients on e.clientid equals c.clientid select new { e.eventname, c.clientname };


in addition to the answer of Andrew Lewis you need to:

1) add the clientid field to the events table

2) run a sql query to fill the clientid field:

update events set clientid = (select clientid from client where name = events.clientname)

3) remove the clientname field from the events table

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜