0
Like

Simple Gæstebog i ASP .NET C#

Simple Gæstebog i ASP .NET C#

Nu hvor jeg har poste en del omkring de forskellige ting vil jeg også gerne vise lidt hvad jeg enligt har lært ud af denne her bog jeg sider og bruger så meget tid på nogle dage skriver jeg ikke nået omkring .NET andre dage poster jeg helt vildt, håber alle der læser mine indlæg kan få nået ud af det jeg sider og skriver omkring.

Men først vil jeg vise jer en gæstebog jeg har læst mig frem til og lært at lave via denne bog, det er ikke nået wooow men det er stadig en lille ting :0)

først opretter i en class fil der hedder BookEntry med følge indhold.

C#:
  1. using System;
  2. using System.Data;
  3. using System.Configuration;
  4. using System.Linq;
  5. using System.Web;
  6. using System.Web.Security;
  7. using System.Web.UI;
  8. using System.Web.UI.HtmlControls;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.WebControls.WebParts;
  11. using System.Xml.Linq;
  12.  
  13. /// <summary>
  14. /// Summary description for BookEntry
  15. /// </summary>
  16. public class BookEntry
  17. {
  18.     private string author;
  19.     public string Author
  20.     {
  21.         get { return author; }
  22.         set { author = value; }
  23.     }
  24.  
  25.     private DateTime submitted;
  26.     public DateTime Submitted
  27.     {
  28.         get { return submitted; }
  29.         set { submitted = value; }
  30.     }
  31.  
  32.     private string message;
  33.     public string Message
  34.     {
  35.         get { return message; }
  36.         set { message = value; }
  37.     }
  38. }

det næste i gør er at oprette en mappe på i jeres website dir med navnet GuestBook og derefter tilføjer dette data i jeres defualt.aspx fil.

C#:
  1. <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
  2.  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4.  
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head runat="server">
  7.     <title>Untitled Page</title>
  8. </head>
  9. <body>
  10.     <form id="form1" runat="server">
  11.     <div>
  12.    
  13.         <asp:GridView ID="GuestBookList" runat="server" AutoGenerateColumns="false">
  14.             <Columns>
  15.                 <asp:TemplateField HeaderText="Guest Book Comments">
  16.                     <ItemTemplate>
  17.                         Left By:
  18.                         <%# Eval("Author") %>
  19.                         <br />
  20.                         <b><%# Eval("Message") %></b>
  21.                         <br />
  22.                         Left On:
  23.                         <%# Eval("Submitted") %>
  24.                     </ItemTemplate>
  25.                 </asp:TemplateField>
  26.             </Columns>
  27.         </asp:GridView>
  28.    
  29.     </div>
  30.     <p>
  31.         Dit navn:
  32.         <asp:TextBox ID="txtSubmitName" runat="server"></asp:TextBox>
  33.         <br />
  34.         Kommentar:
  35.         <asp:TextBox ID="txtMessage" runat="server" TextMode="MultiLine"></asp:TextBox>
  36.         <br />
  37.         <asp:Button ID="btnSubmit" runat="server" onclick="btnSubmit_Click"
  38.             Text="Gem" />
  39.     </p>
  40.     <p>
  41.         <asp:Label ID="lblError" runat="server" Text="Label"></asp:Label>
  42.     </p>
  43.     </form>
  44. </body>
  45. </html>

så går vil vores codebehind fil altså aspx.cs filen og tilføjer dette data.

C#:
  1. using System;
  2. using System.Configuration;
  3. using System.Data;
  4. using System.Linq;
  5. using System.Web;
  6. using System.Web.Security;
  7. using System.Web.UI;
  8. using System.Web.UI.HtmlControls;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.WebControls.WebParts;
  11. using System.Xml.Linq;
  12.  
  13. using System.IO;
  14. using System.Collections.Generic;
  15.  
  16. public partial class _Default : System.Web.UI.Page
  17. {
  18.     private string guestBookName;
  19.     protected void Page_Load(object sender, EventArgs e)
  20.     {
  21.         guestBookName = Server.MapPath("GuestBook");
  22.         if (!this.IsPostBack)
  23.         {
  24.             GuestBookList.DataSource = GetAllEntries();
  25.             GuestBookList.DataBind();
  26.         }
  27.     }
  28.  
  29.     protected void btnSubmit_Click(object sender, EventArgs e)
  30.     {
  31.         BookEntry newBook = new BookEntry();
  32.         newBook.Author = txtSubmitName.Text;
  33.         newBook.Submitted = DateTime.Now;
  34.         newBook.Message = txtMessage.Text;
  35.  
  36.         try
  37.         {
  38.             SaveEntry(newBook);
  39.         }
  40.         catch (Exception err)
  41.         {
  42.             lblError.Text = err.Message + " File not saved.";
  43.             return;
  44.         }
  45.  
  46.         GuestBookList.DataSource = GetAllEntries();
  47.         GuestBookList.DataBind();
  48.  
  49.         txtMessage.Text = "";
  50.         txtSubmitName.Text = "";
  51.     }
  52.  
  53.     private List<BookEntry> GetAllEntries()
  54.     {
  55.         List<BookEntry> entries = new List<BookEntry>();
  56.  
  57.         try
  58.         {
  59.             DirectoryInfo guestBookDir = new DirectoryInfo(guestBookName);
  60.             foreach (FileInfo fileItem in guestBookDir.GetFiles())
  61.             {
  62.                 try
  63.                 {
  64.                     entries.Add(GetEntryFromFile(fileItem));
  65.                 }
  66.                 catch (Exception err)
  67.                 {
  68.                 }
  69.             }
  70.         }
  71.         catch (Exception err)
  72.         {
  73.         }
  74.  
  75.         return entries;
  76.     }
  77.     private BookEntry GetEntryFromFile(FileInfo entryFile)
  78.     {
  79.         BookEntry newEntry = new BookEntry();
  80.         StreamReader r = entryFile.OpenText();
  81.         newEntry.Author = r.ReadLine();
  82.         newEntry.Submitted = DateTime.Parse(r.ReadLine());
  83.         newEntry.Message = r.ReadLine();
  84.         r.Close();
  85.         return newEntry;
  86.     }
  87.  
  88.     private void SaveEntry(BookEntry entry)
  89.     {
  90.         Random random = new Random();
  91.         string fileName = guestBookName + @"\";
  92.         fileName += DateTime.Now.Ticks.ToString() + random.Next(100).ToString();
  93.         FileInfo newFile = new FileInfo(fileName);
  94.         StreamWriter w = newFile.CreateText();
  95.  
  96.         w.WriteLine(entry.Author);
  97.         w.WriteLine(entry.Submitted.ToString());
  98.         w.WriteLine(entry.Message);
  99.         w.Flush();
  100.         w.Close();
  101.     }
  102. }

det var alt jeg havde at byde på lige nu, håber denne guide hjælper jer lidt igang, kan godt være jeg bygger lidt videre på denne tutorial når jeg ved nået mere.

  • Share/Bookmark