Halo 1 | Halo 2 |
Halo 3 | Halo 4 |
Belajar C Sharp
Sunday, February 17, 2013
Thursday, December 6, 2012
Simple Project : Blog Entry & Listing
o Admin
o Scaffolding
using Dynamic / View
> Limit Scaffolding only to
Blog table.
> Create page for User CRUD (Create, Replace, Update &
Delete) using Web Forms.
o Logout
URL by a class implementing IHttpHandler (ProcessRequest method).
o Front Page
o MVC (another site) to
view Blog Entries.
o Optimize
/ Cache Application.
o Deploy.
Tuesday, December 4, 2012
Custom HTTP Handler 2
===================
KompasPageHandler2
===================
using System.Web;
using System.Drawing;
using System.IO;
using System.Drawing.Imaging;
using System;
/// <summary>
/// Summary description for KompasPageHandler
/// </summary>
namespace Kompas
{
public class KompasPageHandler2 : IHttpHandler
{
public KompasPageHandler2()
{
//
// TODO: Add constructor logic here
//
}
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
string urlPath = context.Request.RawUrl;
string[] splitUrl = urlPath.Split('/');
context.Response.Write(context.Request.RawUrl);
context.Response.Write("<BR/>");
context.Response.Write(
String.Format("Tahun {0} Bulan {1}, Artikel {2}",
splitUrl[3], splitUrl[4], splitUrl[5]
)
//"Tahun " + splitUrl[1]
);
for (int i = 0; i < splitUrl.Length; i++)
{
context.Response.Write(splitUrl[i] + "<BR/>");
}
//context.Response.Write("Halooo...");
}
}
}
===================
web.config
===================
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<httpHandlers>
<add path="*/kompas" verb="*" type="Kompas.KompasPageHandler" />
<add path="kompas2/*/*/*" verb="*" type="Kompas.KompasPageHandler2" />
</httpHandlers>
<compilation debug="true" targetFramework="4.0"/>
<urlMappings>
<add url="~/gambarsaja" mappedUrl="~/Gambar.ashx"/>
</urlMappings>
</system.web>
</configuration>
Custom HTTPHandler
==================
==================
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="Kompas.KompasPageHandler" />
</httpHandlers>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
</configuration>
==================================
HTTPHandler (dimasukkan di App_Code)
=================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// Summary description for KompasPageHandler
/// </summary>
namespace Kompas
{
public class KompasPageHandler : IHttpHandler
{
public KompasPageHandler()
{
//
// TODO: Add constructor logic here
//
}
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
//context.Response.Write(context.Request.RawUrl);
//context.Response.Write("Halooo...");
string kata = context.Request.QueryString["kata"];
int width = 600; //int.Parse(context.Request.QueryString["width"]);
int height = 400; //int.Parse(context.Request.QueryString["height"]);
Bitmap bitmap = new Bitmap(width, height);
Font drawFont = new Font("Arial", 16);
SolidBrush drawBrush = new SolidBrush(Color.Black);
SolidBrush drawBrushWhite = new SolidBrush(Color.White);
PointF drawPoint = new PointF(150.0F, 350.0F);
Pen whitePen = new Pen(Color.White, 1);
Graphics g = Graphics.FromImage((Image)bitmap);
g.FillRectangle(Brushes.Red, 0f, 0f, bitmap.Width, bitmap.Height); // fill the entire bitmap with a red rectangle
for (float i = 0f; i <= 1500f; i += 20f)
{
g.DrawLine(whitePen, 0, i/5, i, 500f);
}
g.DrawString(kata, drawFont, drawBrush, drawPoint);
MemoryStream mem = new MemoryStream();
bitmap.Save(mem, ImageFormat.Png);
byte[] buffer = mem.ToArray();
context.Response.ContentType = "image/png";
context.Response.BinaryWrite(buffer);
context.Response.Flush();
}
}
}
Baca Web
==========================
==========================
using System.Text;
using System.Net;
using System.IO;
namespace SearchProject
{
class ReadWeb
{
public static string ReadURL(string
url)
{
// used to build entire input
StringBuilder sb = new
StringBuilder();
// used on each read operation
byte[] buf = new byte[8192];
// prepare the web page we will be asking for
HttpWebRequest request = (HttpWebRequest)
WebRequest.Create(url);
// execute the request
HttpWebResponse response = (HttpWebResponse)
request.GetResponse();
// we will read data via the response stream
Stream resStream = response.GetResponseStream();
string tempString = null;
int count = 0;
do
{
// fill the buffer with data
count = resStream.Read(buf, 0, buf.Length);
// make sure we read some data
if (count != 0)
{
// translate from bytes to ASCII text
tempString = Encoding.ASCII.GetString(buf,
0, count);
// continue building the string
sb.Append(tempString);
}
}
while (count > 0); //
any more data to read?
// print out page source
return (sb.ToString());
}
}
}
==========================
RegexTest.cs
==========================
==========================
using System;
using System.IO;
using System.Collections.Generic;
namespace SearchProject
{
class RegexTest
{
static string
bacaFile(string namaFile)
{
String teksSumber = String.Empty;
if (File.Exists(namaFile))
teksSumber =
File.ReadAllText(namaFile);
else
Console.WriteLine("File tidak ditemukan");
return teksSumber;
}
static string
ambilResult()
{
String namaFile = Directory.GetCurrentDirectory()
+
@"\..\..\Cerita Kancil.txt";
String teksSumber = bacaFile(namaFile);
//Penggunaan Objek
HasilSearchRegex objSearch = new HasilSearchRegex();
objSearch.keyword = @"(?i)([a-z]+)-\1";
//objSearch.keyword = @"(?i)(kancil|harimau)";
return objSearch.getConsoleResult(teksSumber);
}
static void Main(string[] args)
{
//ReadWeb objWeb = new ReadWeb();
String teksSumber = ReadWeb.ReadURL("http://www.klikbca.com");
//Console.WriteLine(teksSumber.ToString());
//Console.Write(hasil);
//String namaFile = Directory.GetCurrentDirectory() +
//
@"\..\..\Cerita Kancil.txt";
//String teksSumber = bacaFile(namaFile);
////Penggunaan Objek
HasilSearchRegex objSearch = new HasilSearchRegex();
//objSearch.keyword = @"(?i)([a-z]+)-\1";
objSearch.keyword = @"<td.+kurs.+?>(.+?)</td>";
//objSearch.getConsoleResult(teksSumber);
////
Console.WriteLine(objSearch.getConsoleResult(teksSumber));
Console.ReadLine();
}
}
}
Collections 2
=============================================
Cerita Kancil.txt
=============================================
Cerita Kancil
Alkisah, ada seekor kancil yang sedang berteduh di tepi sungai dengan rindang pohon-pohon teduh disana.
Tiba-tiba si kancil mencium adanya mara bahaya, yaitu seekor harimau yang sedang menuju ke arahnya dari kejauhan.
Melihat keadaan tersebut si kancil mendekat ke kolam yang kotor dengan tanah liat, melumuri badannya dengan bau-bau bangkai
ikan yang terdapat di sekitarnya. Setelah itu tiduran dengan berpura-pura mengeluarkan banyak busa di mulutnya.
Si Harimau akhirnya mendekat dan menyeringai ke Si Kancil...
"Wah, ini hari keberuntungan saya. Seekor kancil yang akan menjadi sarapanku !", kata si Harimau
"Oh Harimau... sahabatku, tolonglah daku yang sedang keracunan ini.... ", lirih Sang Kancil
"Hah ?? Buat apa saya bantu kau... Dan, kamu keracunan apakah sampai sekarat begini ?", si Harimau menjadi ragu
"Oh Harimau, akibat keteledoran saya meminum air buangan manusia disana, perut saya menjadi sangat sakit dan panas...
Banyak ikan mati disana, mungkin keracunan air yang sama. Ajalku segera dekat... Tolonglah aku Harimau... ", lirih Sang
Kancil menjadi-jadi. tiba-tiba.
Sang Harimau akhirnya pergi tanpa mempedulikan Si Kancil karena takut jika menyantap Si Kancil, racunnya juga akan
masuk ke badannya.
Sang Kancil memperhatikan sampai si Harimau pergi jauh, dan kemudian lari ke tempat yang tenang dengan ceria
karena telah terhindar dari bahaya.
=============================================
HasilSearch (Abstract Class)
=============================================
=============================================
HasilSearchRegex (Inherit)
=============================================
=============================================
RegexTest
=============================================
Cerita Kancil.txt
=============================================
Cerita Kancil
Alkisah, ada seekor kancil yang sedang berteduh di tepi sungai dengan rindang pohon-pohon teduh disana.
Tiba-tiba si kancil mencium adanya mara bahaya, yaitu seekor harimau yang sedang menuju ke arahnya dari kejauhan.
Melihat keadaan tersebut si kancil mendekat ke kolam yang kotor dengan tanah liat, melumuri badannya dengan bau-bau bangkai
ikan yang terdapat di sekitarnya. Setelah itu tiduran dengan berpura-pura mengeluarkan banyak busa di mulutnya.
Si Harimau akhirnya mendekat dan menyeringai ke Si Kancil...
"Wah, ini hari keberuntungan saya. Seekor kancil yang akan menjadi sarapanku !", kata si Harimau
"Oh Harimau... sahabatku, tolonglah daku yang sedang keracunan ini.... ", lirih Sang Kancil
"Hah ?? Buat apa saya bantu kau... Dan, kamu keracunan apakah sampai sekarat begini ?", si Harimau menjadi ragu
"Oh Harimau, akibat keteledoran saya meminum air buangan manusia disana, perut saya menjadi sangat sakit dan panas...
Banyak ikan mati disana, mungkin keracunan air yang sama. Ajalku segera dekat... Tolonglah aku Harimau... ", lirih Sang
Kancil menjadi-jadi. tiba-tiba.
Sang Harimau akhirnya pergi tanpa mempedulikan Si Kancil karena takut jika menyantap Si Kancil, racunnya juga akan
masuk ke badannya.
Sang Kancil memperhatikan sampai si Harimau pergi jauh, dan kemudian lari ke tempat yang tenang dengan ceria
karena telah terhindar dari bahaya.
=============================================
HasilSearch (Abstract Class)
=============================================
using System.Collections.Generic;
namespace SearchProject
{
abstract class HasilSearch
{
public string keyword
{ get; set; }
public int jumlahHasil
= 0;
public List<string> hasil;
public HasilSearch()
{
this.keyword = "";
hasil = new List<string>();
}
protected abstract List<string>
getHasil(string source);
}
}
=============================================
HasilSearchRegex (Inherit)
=============================================
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace SearchProject
{
class HasilSearchRegex:
HasilSearch
{
protected override List<string>
getHasil(string source)
{
hasil = new List<string>();
MatchCollection m1 =
Regex.Matches(source, this.keyword);
foreach (Match m2 in m1)
{
hasil.Add(m2.ToString());
}
jumlahHasil = m1.Count;
return hasil;
}
public string
getHTMLTable(string source)
{
string teks = "";
hasil = getHasil(source);
teks = "<table><tr><td>Hasil</td></tr>";
foreach (var item in hasil)
{
teks +=
"<tr><td>"
+ item.ToString()
+ "</td></tr>";
}
teks += "</table>";
return teks;
}
public string
getConsoleResult(string source)
{
string teks = "";
hasil = getHasil(source);
teks = "Hasil : " +
jumlahHasil + " item\n";
teks += "================\n";
foreach (var item in hasil)
{
teks += item.ToString() + "\n";
}
teks += "================\n";
return teks;
}
}
}
RegexTest
=============================================
using System;
using System.IO;
using System.Collections.Generic;
namespace SearchProject
{
class RegexTest
{
static string bacaFile(string namaFile)
{
String teksSumber = String.Empty;
if (File.Exists(namaFile))
teksSumber =
File.ReadAllText(namaFile);
else
Console.WriteLine("File tidak ditemukan");
return teksSumber;
}
static void Main(string[] args)
{
String namaFile = Directory.GetCurrentDirectory() +
@"\..\..\Cerita Kancil.txt";
String teksSumber = bacaFile(namaFile);
//Penggunaan Objek
HasilSearchRegex objSearch = new HasilSearchRegex();
objSearch.keyword = @"(?i)([a-z]+)-\1";
//objSearch.keyword = @"(?i)(kancil|harimau)";
objSearch.getConsoleResult(teksSumber);
//
Console.WriteLine(objSearch.getConsoleResult(teksSumber));
Console.ReadLine();
}
}
}
Monday, December 3, 2012
Collections
============================================================
HasilSearch.cs
============================================================
HasilSearch.cs
============================================================
using System.Collections.Generic;
namespace SearchProject
{
abstract class HasilSearch
{
public string keyword
{ get; set; }
public List<string> hasil;
public HasilSearch()
{
this.keyword = "";
hasil = new List<string>();
}
public abstract List<string>
getHasil();
}
}
============================================================
HasilSearchRegex
============================================================
============================================================
RegexTest.cs
============================================================
using System;
============================================================
Contoh Teks untuk Search (buat dalam file Cerita Kancil.txt)
============================================================
Cerita Kancil
Alkisah, ada seekor kancil yang sedang berteduh di tepi sungai dengan rindang pohon-pohon teduh disana.
Tiba-tiba si kancil mencium adanya mara bahaya, yaitu seekor harimau yang sedang menuju ke arahnya dari kejauhan.
Melihat keadaan tersebut si kancil mendekat ke kolam yang kotor dengan tanah liat, melumuri badannya dengan bau-bau bangkai
ikan yang terdapat di sekitarnya. Setelah itu tiduran dengan berpura-pura mengeluarkan banyak busa di mulutnya.
Si Harimau akhirnya mendekat dan menyeringai ke Si Kancil...
"Wah, ini hari keberuntungan saya. Seekor kancil yang akan menjadi sarapanku !", kata si Harimau
"Oh Harimau... sahabatku, tolonglah daku yang sedang keracunan ini.... ", lirih Sang Kancil
"Hah ?? Buat apa saya bantu kau... Dan, kamu keracunan apakah sampai sekarat begini ?", si Harimau menjadi ragu
"Oh Harimau, akibat keteledoran saya meminum air buangan manusia disana, perut saya menjadi sangat sakit dan panas...
Banyak ikan mati disana, mungkin keracunan air yang sama. Ajalku segera dekat... Tolonglah aku Harimau... ", lirih Sang
Kancil menjadi-jadi
Sang Harimau akhirnya pergi tanpa mempedulikan Si Kancil karena takut jika menyantap Si Kancil, racunnya juga akan
masuk ke badannya.
Sang Kancil memperhatikan sampai si Harimau pergi jauh, dan kemudian lari ke tempat yang tenang dengan ceria
karena telah terhindar dari bahaya.
============================================================
HasilSearchRegex
============================================================
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace SearchProject
{
class HasilSearchRegex:
HasilSearch
{
public override List<string>
getHasil(string source)
{
hasil = new List<string>();
MatchCollection m1 =
Regex.Matches(source, this.keyword);
foreach (Match m2 in m1)
{
hasil.Add(m2.ToString());
}
return hasil;
}
public string
getHTMLTable()
{
string teks = "";
teks = "<table><tr><td>Hasil</td></tr>";
foreach (var item in hasil)
{
teks +=
"<tr><td>"
+ item.ToString()
+ "</td></tr>";
}
teks += "</table>";
return teks;
}
public string
getConsoleResult()
{
string teks = "";
teks = "Hasil\n";
teks += "================\n";
foreach (var item in hasil)
{
teks += item.ToString() + "\n";
}
teks += "================\n";
return teks;
}
}
}
============================================================
RegexTest.cs
============================================================
using System;
using System.IO;
using System.Collections.Generic;
namespace SearchProject
{
class RegexTest
{
static string
bacaFile(string namaFile)
{
String teksSumber = String.Empty;
if (File.Exists(namaFile))
teksSumber =
File.ReadAllText(namaFile);
else
Console.WriteLine("File tidak ditemukan");
return teksSumber;
}
static void Main(string[] args)
{
String namaFile = Directory.GetCurrentDirectory()
+
@"\..\..\Cerita Kancil.txt";
String teksSumber = bacaFile(namaFile);
//Penggunaan Objek
HasilSearchRegex objSearch = new HasilSearchRegex();
objSearch.keyword = @"(?i)([a-z]+)-\1";
//objSearch.keyword = @"(?i)(kancil|harimau)";
List<string>
hasil =
objSearch.getHasil(teksSumber);
//
Console.WriteLine(objSearch.getConsoleResult());
Console.ReadLine();
}
}
}
============================================================
Contoh Teks untuk Search (buat dalam file Cerita Kancil.txt)
============================================================
Cerita Kancil
Alkisah, ada seekor kancil yang sedang berteduh di tepi sungai dengan rindang pohon-pohon teduh disana.
Tiba-tiba si kancil mencium adanya mara bahaya, yaitu seekor harimau yang sedang menuju ke arahnya dari kejauhan.
Melihat keadaan tersebut si kancil mendekat ke kolam yang kotor dengan tanah liat, melumuri badannya dengan bau-bau bangkai
ikan yang terdapat di sekitarnya. Setelah itu tiduran dengan berpura-pura mengeluarkan banyak busa di mulutnya.
Si Harimau akhirnya mendekat dan menyeringai ke Si Kancil...
"Wah, ini hari keberuntungan saya. Seekor kancil yang akan menjadi sarapanku !", kata si Harimau
"Oh Harimau... sahabatku, tolonglah daku yang sedang keracunan ini.... ", lirih Sang Kancil
"Hah ?? Buat apa saya bantu kau... Dan, kamu keracunan apakah sampai sekarat begini ?", si Harimau menjadi ragu
"Oh Harimau, akibat keteledoran saya meminum air buangan manusia disana, perut saya menjadi sangat sakit dan panas...
Banyak ikan mati disana, mungkin keracunan air yang sama. Ajalku segera dekat... Tolonglah aku Harimau... ", lirih Sang
Kancil menjadi-jadi
Sang Harimau akhirnya pergi tanpa mempedulikan Si Kancil karena takut jika menyantap Si Kancil, racunnya juga akan
masuk ke badannya.
Sang Kancil memperhatikan sampai si Harimau pergi jauh, dan kemudian lari ke tempat yang tenang dengan ceria
karena telah terhindar dari bahaya.
Subscribe to:
Posts (Atom)