Salah satu fitur UGC yang ditawarkan kepada user adalah
video. Fitur ini bisa digunakan oleh user yang sudah teregistrasi ke dalam
server. Video yang sudah di upload oleh user dapat dilihat sebagai bahan
pembelajaran dan informasi bagi user lainnya. Berbicara dari segi requirement
pembuatan form upload video membutuhkan beberapa file konfigurasi seperti file
config.cs, utilities.cs, file LinqToSQL (atau biasa disebut data context), dan
sebuah folder penyimpanan video yang diupload oleh user. Setelah seluruh
requirement dipenuhi barulah kita masuk ke dalam listing program. Inti program saya buat pada sebuah file yang
diberi nama dengan MyVideos.aspx
Pada Bahasa pemrograman ASP.NET , pembutan website
dipisahkan antara kode asp dengan control program di C#. Untuk tampilan view/UI website saya
menggunakan bahasa pemrogaman asp
sedangkan untuk control saya menggunakan bahasa pemrograman C#. Berikut kode
listing yang digunakan
MyVideos.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="MyVideos.aspx.cs" Inherits="MyVideos" %><asp:Content ID="Content1" ContentPlaceHolderID="ContentHolder5" runat="Server"><h3>Upload New Video</h3><table> <tr><td> Title </td><td> : </td><td><asp:TextBox ID="TextBoxTitle" runat="server" MaxLength="50"></asp:TextBox></td></tr><tr><td> Description </td><td> : </td><td><asp:TextBox ID="TextBoxDescription" runat="server" Width="300" MaxLength="500"></asp:TextBox></td></tr><tr><td> File </td><td> : </td><td><asp:FileUpload ID="FileUpload1" runat="server" Font-Size="Smaller" /></td></tr></table><asp:Button ID="ButtonUpload" runat="server" Text="Upload" OnClick="ButtonUpload_Click" Font-Size="Smaller" /><br /><asp:Label ID="LabelMessage" SkinID="LabelMessage" runat="server"></asp:Label></asp:Content>MyVideos.aspx.csusing System;using System.Linq;using System.Web.UI;using System.Web.UI.WebControls;using System.IO;public partial class MyVideos : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){if (!IsPostBack) { this.Title = Config.SiteName + " : My Videos"; }}protected void ButtonUpload_Click(object sender, EventArgs e){if (TextBoxTitle.Text.Trim() == ""){LabelMessage.Text = "Title for your video is required";}else if (!FileUpload1.HasFile){LabelMessage.Text = "File does not exist";}else{if (!Config.IsAllowedFileType(FileUpload1.FileName)){LabelMessage.Text = "File format is not supported";}else if (FileUpload1.PostedFile.ContentLength > Config.MaximumFileSizeInBytes){LabelMessage.Text = "File size must not larger than " + Config.MaximumFileSizeInKiloBytes + " KiloBytes";}else{string fileExtension = Path.GetExtension(FileUpload1.FileName);string username = User.Identity.Name;string generatedFileName = username + "_" + DateTime.Now.Ticks.ToString();string destination = Server.MapPath(@"Videos\") + generatedFileName + fileExtension;Video video = new Video();video.Title = TextBoxTitle.Text;video.Description = TextBoxDescription.Text;video.FileName = generatedFileName + fileExtension;video.Username = username; pidioDataContext database = new pidioDataContext();database.Videos.InsertOnSubmit(video);database.SubmitChanges();FileUpload1.SaveAs(destination);LabelMessage.Text = "File has been uploaded";}}}}






0 comments:
Post a Comment