0

I'm building a website in asp.net that deals with learning material in many subjects. I built a page for displaying material that looks like this: CONTENT

Basically I need to implement a system whereby I can add material online as an admin using some kind of text editor with formatting (I'll download a ready-built one). and it will be stored an indexed in the database with the content+title.

I then need a way to be able to dynamically create pages like in the picture with the content for the user to display to him when he clicks on a link for a particular material page.

I'm a beginner thats slowly learning asp.net/sql databases/visual studio.

Any help with guidance in order to implement this would be heavily appreciated.

2
  • Do you want a solution that you have control of yourself or can you use a content management system like wordpress? Commented May 28, 2013 at 11:16
  • Control of myself. Ideally i would like to have an organized table in database so that I can implement a search function for material and so forth. also I don't want to have to create physical files for each material page because that would be maybe hundreds - I would like to create and display to user temporarily somehow. Commented May 28, 2013 at 11:17

3 Answers 3

1

I would strongly recommend not trying to make a CMS yourself.

Some quick reasons:

  1. You'll soon find yourself re-inventing the wheel with features that already exist in current CMS projects. For example, merging data dynamically into HTML.

  2. There are tons of things around storing/displaying HTML that you'll have to take care of. For example, have you thought about scrubbing out javascript when people save HTML? They might put in malicious code - or do something silly.

  3. The database design can quickly get very large. Speaking from lots of experiences with CMS projects, this can be really hard to get right.

I'd recommend at least trying a free .NET CMS before doing it yourself.

Some options:

https://stackoverflow.com/questions/243655/what-is-the-best-open-source-net-content-management-system-cms

Sign up to request clarification or add additional context in comments.

Comments

1

You are talking about a Custom Web Content Management System. this could be done using one table in database like this

[ID] [bigint] IDENTITY(1,1) NOT NULL,
[MetaTitle] [varchar](500) NULL,
[MetaDescription] [varchar](2500) NULL,
[MetaKeyWords] [varchar](2500) NULL,
[Name] [varchar](500) NULL,
[Contents] [varchar](max) NULL,
[DateCreated] [datetime] NULL,
[LastModified] [datetime] NULL,
[CreatedBy] [uniqueidentifier] NULL,
[ModifiedBy] [uniqueidentifier] NULL,
[IsActive] [bit] NULL,

Then you can manage the html contents using CKeditor

2 Comments

Any insights on how I would implement displaying the contents dynamically on a web page according to the url or something like that?
make a webform like contents.aspx , use querystring to deliver your page's ID to contents.aspx like contents.aspx?id=1. On contents page use a simple query to get your data and show html contents on a literal like <asp:Literal runat="server" ID="litContents"/> litContents.Text = //Your contents from database
0

You will need to have two sides, one to view the pages and a password protected area to add and edit the pages. The keyword here I think is CRUD (Create, read, update and delete), you can find many tutorials for this, an example is below:

http://domscode.com/2010/11/10/tutorial-building-a-simple-crud-application-using-asp-net-webforms-code-first-ef-4-and-sql-ce-4/

1 Comment

I already have an admin page with a gridview of users where I can create read update and delete. creating that isn't the issue. but rather storing nicely formatted html material in a database and displaying it to user dynamically.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.