MEZUNSAN mezun önerme sistemi kullanıcıların en doğru kiĢiyi en kısa yoldan bulmaları amacıyla oluĢturulmuĢtur. Eğitmen ve firmaların birbirleri ile iletiĢime geçerek ve birbirlerine referans verme sistemi ile doğru öğrencilerin doğru firmalara yönlendirilmesi sağlanmıĢtır. MEZUNSAN bilgi sistemi sayesinde öğrenciler hem kendileri için en doğru iĢi bulabilecekler hemde eğitmenleri ve arkadaĢları ile bağlarını sürekli güncel tutacaklardır.
MEZUNSAN mezun önerme sistemi ASP.NET ve framework 4.0 kullanılarak web ortamında yazılmıĢtır. Veritabanı olarak mssql kullanılmıĢtır. Ayrıca MEZUNSAN mezun önerme sisteminde devexpress toolları ile .net mimarisinin en yeni frameworklerinden olan Entity Framework yapısı kullanılmıĢtır. Entity Framework çok yeni bir framework olduğu için bazı tiplerin oluĢturulmasında zorluklar ile karĢılaĢılsada genel olarak devexpress tolların verdiği kolaylıklarla proje tamamlanmıĢtır. Proje olarak iki farklı proje oluĢturulmuĢ birinci projede veritabanı bağlantıları ve class yapıları ikinci projede kullanıcı iletiĢimlerinin sağlandığı aspx sayfaları bulunmaktadır. Projede yer alan manager ve tiplerde birinci projede bulunmaktadır.
Sonuç olarak kullanıcı etkileĢimine sahip MEZUNSAN mezun önerme sistemi sistemi oluĢturulmuĢtur. Kullanıcı yapılarının kolaylığı ve sistemin basit ve hızlı kullanılabilir olması web projelerinde çok büyük bir önem taĢımaktadır.
MEZUNSAN mezun önerme sisteminde ileriki dönemlerde kullanıcıların bilgi paylaĢımı yapabileceği farklı bir bölüm yapılabilir. Ayrıca kiĢilerin birbirlerini takip edebilecekleri bir takip sistemi yazılabilir. Sms altyapısı ile kullanıcıların sistemi daha efektif kullanımı sağlanabilir ayrıca ödeme altyapısı kurularak firma özel üyelikleri alınabilir ve firmaların kendi sayfalarını kurmaları sağlanabilir. Sistem üzerinde yeni kurulan global projelerin birçok özelliği katılarak çok daha büyük bir sistem oluĢturulabilir.
KAYNAKÇA
ALTINEL Berna,2007., A Hybrid Music Recommendation System Based On Different Feature Of The Music And Users, Ġstanbul Technical University, Institute Of Science And Technology s.4-15, s.30. ATO.,1999 Elektronik Ticaret ve Ġnternet, Yayın No:8 Haziran
AZAK Mustafa,2010.,Crossing:Çapraz Önerme Alanlarında Bilgi Tabanlı Önerme Sistemi GeliĢtirmek Ġçin Bir Çatı, Orta Doğu Teknik Üniversitesi, Bilgisayar Mühendisliği Bölümü
BATTAL Abdullah,2009., Semantik Web ile GeliĢtirilen Bir Televizyon ProgramÖneri Sistemi, TOBB Ekonomi ve Teknoloji Üniversitesi Fen Bilimleri Enstitüsü
Burke, R.Knowledge-based recommender systems, Department of Information and Computer Science University of California, Irvine s.9, s.16
Burke.R, Bamshad Mobasher, Runa Bhaumik, and Chad Williams, 2005., Segment-based injection attacks against collaborative filtering recommender systems.In ICDM ‟05: Proceedings of the Fifth IEEE International Conference on Data Mining, s.577–580, Washington, DC, USA, IEEE Computer Society.
Berners Lee, T., What The Semantic Web can Represent, W3C Publications on Semantic Web, http://www.w3.org/1999/xhtml, 1998 Carrasco Alberto Lumbreras, 2012., Towards Trust-aware Recommendations In Social Networks, Master in Artificial Intelligence (UPC-URV-UB) Master of Science Thesis s.16-18, s.24- 28.
Ceylan Uğur,2011., Anlamsal Benzerlik Ölçüsü ve Özellik Ağırlıklandırmaya Dayanan Ontoloji Tabanlı Melez Bir Önerme Sistemi, Orta Doğu Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü
Cleverdon, C.W.1960., The ASLIB Cranfield Research Project on the comparative efficiency of indexing systems. ASLIB Proceedings, 12, 421-431.
Conner, M.O.and Herlocker., J.1999.Clustering Items for Collaborative Filtering.In Proceedings of the ACM SIGIR Workshop on Recommender Systems
DÜZGÜN Sayıl Saçak,2012.,Borgo: Gruplar için Kitap Önerme Sistemi, Orta Doğu Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü
ETTK ., 1998 Türkiye Ġçin Elektronik Ticarete GeçiĢ Durum Değerlemesi ve Pilot Uygulama Projesi, Türkiye Elektronik Ticaret Koordinasyon Kurulu Raporu, Ankara.
Hogler, Raymond L., Christine Henle ve Carol Bemus 1998.,, “Internet Recruiting and Employment Discrimination: A Legal Perspective”, Human Resource Management Review, Vol.8, No.2
Kırçova, Ġbrahim 1999.Ġnternette pazarlama.Ġstanbul: Beta
KırmemiĢ Öznur, 2008., Openmore: Ġçerik bazlı film önerme sistemi Orta Doğu Teknik Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Anabilim Dalı
Lee, In.2005., “E-Recruiting, Categories and Analysis of Fortune 100 Career Web Sites”, E-Human Resources Management: Managing Knowledge People, (Der.Teresa Torres-Coronas ve Mario Arias-Oliva), Idea Group, Pennsylvania, s.86-101.
Luhn, H.P.1960 Key word-in-context for technical literature (KWIC index).American Documentation
Meyer Frank, Recommender systems in industrial contexts 2012., Docteur de L‟Universite de Grenoble.
Mirza Batul J., 2001.,Jumping Connections: A Graph-Theoretic Model for Recommender Systems Thesis submitted to the Faculty of the
Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of s.6-8
Musial Katarzyna, 2006 ., Recommendation System for Online Social Network, School of Engineering Blekinge Institute of Technology Master Thesis Software Engineering s.6-29
Osmanlı Osman Nuri, 2010., A Singular Value Decomposition Approach for Recommendation Systems, A Thesis Submitted to The Graduate School of Natural and Applied Sciences of Middle East Technical University s.4-12
ÖZKAN Hüseyin Burhan,2010.,Ġstatiksel Bir YaklaĢım Kullanılarak GeliĢtirilmiĢ Film Önerme Sistemi Çankaya Üniversitesi, Bilgisayar Mühendisliği Bölümü
Prem Melville and Vikas Sindhwani.1997., Recommender Systems, IBM T.J.Watson Research Center, Yorktown Heights.
Pustylnick, Igor, 2011, “Patterns of Concealed Advertising in Social Network Websites, ”Social Science ResearchNetwork.
Salton, G.1971., The SMART retrieval system: Experiments in automatic document processing.Englewood Cliffs, NJ: Prentice-Hall. Schafer, J.B., Konstan, J.A., and Riedl, J.2001., E-Commerce Recommendation Applications.Data Mining and Knowledge Discovery, s.115–153
Stone, Dianna L., Eugene F.Stone-Romero ve Kimberly Lukaszewski 2006., “Factors Affecting The Acceptance and Effectiveness of Electronic Human Resource Systems”, Human Resource Management Review, Vol.16, No.2, s 229–244.
ġakiroğlu AyĢe Merve, 2005., Web Siteleri Ġçin Yapay BağıĢıklık Tabanlı Bir Öneri Sistemi, Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Anabilim Dalı,Konya s.11-27
ġahinkaya, Ferhat ,2010.,Öneri Sistemlerinde Çok Seviyeli ve Ġki Yönlü Güven Verisine Dayalı Ġçerik Destekli Kolaboratif Filtreleme YaklaĢımı,Orta Doğu Teknik Üniversitesi Bilgisayar Mühendisliği s.4-
EKLER
EK-1: Bölüm Bilgilerinin ĠĢlendiği Class Yapıları
public class BolumHelper {
public static bool BolumEkle(string ad) {
try {
tblBolum Bolum = new tblBolum(); Bolum.Ad = ad;
return true; }
catch (Exception ex) {
return false; }
}
public static tblBolum getBolum(int id) {
tblBolum getBolum = (from th in Context.context.tblBolum where th.Id == id
select th).FirstOrDefault(); return getBolum;
}
public static List<tblBolum> getBolumWithFakulte(int fakulteid) {
List<tblBolumToFakulte> getBolum = (from th in Context.context.tblBolumToFakulte
where th.FakulteId == fakulteid select th).ToList();
List<tblBolum> bolumler = new List<tblBolum>();
foreach (tblBolumToFakulte blm in getBolum) {
tblBolum bolum = BolumHelper.getBolum((int)blm.BolumId); bolumler.Add(bolum);
}
return bolumler;
}
public static List<tblBolum> getTumBolumler() {
List<tblBolum> getBolumler = (from th in Context.context.tblBolum select th).ToList(); return getBolumler;
}
public static bool updateBolum(int id, string ad) {
tblBolum Bolum = (from th in Context.context.tblBolum where th.Id == id
select th).FirstOrDefault();
Bolum.Ad = ad;
Context.context.SaveChanges(); return true;
} }
EK-2: Fakülte Bilgilerinin ĠĢlendiği Class Yapıları public class FakulteHelper
{
public static bool FakulteEkle(string ad) {
try {
tblFakulte Fakulte = new tblFakulte(); Fakulte.Ad = ad;
return true; }
catch (Exception ex) {
return false; }
}
public static tblFakulte getFakulte(int id) {
tblFakulte getFakulte = (from th in Context.context.tblFakulte where th.Id == id
select th).FirstOrDefault(); return getFakulte;
}
public static List<tblFakulte> getBolumToFakulte(int FakulteId) {
List<tblBolumToFakulte> getFakulte = (from th in Context.context.tblBolumToFakulte where th.FakulteId == FakulteId
select th).ToList();
List<tblFakulte> fakulte = new List<tblFakulte>(); if (getFakulte != null)
{
foreach (tblBolumToFakulte f in getFakulte) {
tblFakulte fak =(from th in Context.context.tblFakulte where th.Id == f.FakulteId
select th).FirstOrDefault(); if (fak != null) fakulte.Add(fak); } } return fakulte; }
public static List<tblFakulte> getTumFakulteler() {
List<tblFakulte> getFakulteler = (from th in Context.context.tblFakulte select th).ToList(); return getFakulteler;
}
public static bool updateFakulte(int id, string ad) {
where th.Id == id select th).FirstOrDefault(); Fakulte.Ad = ad; Context.context.SaveChanges(); return true; } }
EK-3: ġehir Bilgilerinin ĠĢlendiği Class Yapıları public class SehirHelper
{
public static bool SehirEkle(string ad, int ustid) {
try {
tblSehir Sehir = new tblSehir(); Sehir.Ad = ad;
Sehir.UstId = ustid;
return true; }
catch (Exception ex) {
return false; }
}
public static List<tblSehir> getTumSehirler() {
List<tblSehir> getTumSehirler = (from th in
Context.context.tblSehir where th.UstId == 0 select th).ToList(); return getTumSehirler;
}
public static List<tblSehir> getIlce(int sehirid) {
List<tblSehir> getIlce = (from th in Context.context.tblSehir where th.UstId == sehirid
select th).ToList(); return getIlce;
}
public static tblSehir getSehirWithSeoUrl(string sehir) {
tblSehir getSehir = (from th in Context.context.tblSehir where th.SeoUrl == sehir
select th).FirstOrDefault(); return getSehir;
}
public static tblSehir getSehirWithUniversiteId(int Id) {
tblSehir getSehir = (from th in Context.context.tblSehir where th.Id == Id
select th).FirstOrDefault(); return getSehir;
}
public static bool updateSehir(int id, string ad) {
tblSehir Sehir = (from th in Context.context.tblSehir where th.Id == id
Sehir.Ad = ad;
Context.context.SaveChanges(); return true;
} }
EK- 4: Sektör Bilgilerinin ĠĢlendiği Class Yapıları public class SektorHelper
{
public static bool SektorEkle(string ad) {
try {
tblSektor Sektor = new tblSektor(); Sektor.Ad = ad;
return true; }
catch (Exception ex) {
return false; }
}
public static tblSektor getSektor(int id) {
tblSektor getSektor = (from th in Context.context.tblSektor where th.Id == id
select th).FirstOrDefault(); return getSektor;
public static bool updateSektor(int id, string ad) {
tblSektor Sektor = (from th in Context.context.tblSektor where th.Id == id select th).FirstOrDefault(); Sektor.Ad = ad; Context.context.SaveChanges(); return true; }
EK- 5: ġirket Bilgilerinin ĠĢlendiği Class Yapıları public class SirketHelper
{
public static List<tblSirket> getTumSirketler() {
List<tblSirket> getTumSirketler = (from th in Context.context.tblSirket select th).ToList();
return getTumSirketler;
}
public static tblSirket getSirket(int id) {
tblSirket getSirket = (from th in Context.context.tblSirket where th.Id == id
select th).FirstOrDefault(); return getSirket;
}
{
tblSirket getSirket = (from th in Context.context.tblSirket where th.SehirId == sehirid
select th).FirstOrDefault(); return getSirket;
}
public static tblSirket getSirketwithSektor(int sektorid) {
tblSirket getSirket = (from th in Context.context.tblSirket where th.SektorId == sektorid
select th).FirstOrDefault(); return getSirket;
}
}
EK- 6: Üniversite Bilgilerinin ĠĢlendiği Class Yapıları
public class UniversiteHelper {
public static bool UniversiteEkle(string ad) {
try {
tblUniversite Universite = new tblUniversite(); Universite.Ad = ad;
return true; }
catch (Exception ex) {
return false; }
}
public static tblUniversite getUniversite(int id) {
tblUniversite getUniversite = (from th in
Context.context.tblUniversite where th.Id == id select th).FirstOrDefault();
return getUniversite;
}
public static tblUniversite getUniversiteWithSeoUrl(string universite)
{
tblUniversite getUniversite = (from th in
Context.context.tblUniversite where th.SeoUrl == universite select th).FirstOrDefault();
return getUniversite;
}
public static List<tblUniversite> getTumUniversiteler() {
List<tblUniversite> getUniversite = (from th in Context.context.tblUniversite select th).ToList(); return getUniversite;
}
public static List<tblUniversite> getUniversitesWithSehir(int sehirid)
List<tblUniversite> getUniversite = (from th in
Context.context.tblUniversite where th.SehirId == sehirid select th).ToList();
return getUniversite;
}
public static bool updateUniversite(int id, string ad) {
tblUniversite Universite = (from th in
Context.context.tblUniversite where th.Id == id select th).FirstOrDefault();
Universite.Ad = ad;
Context.context.SaveChanges(); return true;
}
public static bool updateUniversite(int id, string ad, int sehirid) {
tblUniversite Universite = (from th in
Context.context.tblUniversite where th.Id == id select th).FirstOrDefault(); Universite.Ad = ad; Universite.SehirId = sehirid; Context.context.SaveChanges(); return true; } }
EK- 7: Ünvan Bilgilerinin ĠĢlendiği Class Yapıları public class UnvanHelper
{
public static bool UnvanEkle(string ad) {
try {
tblUnvan Unvan = new tblUnvan(); Unvan.Ad = ad;
return true; }
catch (Exception ex) {
return false; }
}
public static tblUnvan getUnvan(int id) {
tblUnvan getUnvan = (from th in Context.context.tblUnvan where th.Id == id
select th).FirstOrDefault(); return getUnvan;
}
public static List<tblUnvan> getTumUnvanlar() {
List<tblUnvan> getUnvanlar = (from th in Context.context.tblUnvan select th).ToList(); return getUnvanlar;
}
{
tblUnvan Unvan = (from th in Context.context.tblUnvan where th.Id == id select th).FirstOrDefault(); Unvan.Ad = ad; Context.context.SaveChanges(); return true; }
EK- 8: Üye Bilgilerinin ĠĢlendiği Class Yapıları public class UyeHelper
{
public static List<tblUye> getTumUyeler() {
List<tblUye> getTumUyeler = (from th in Context.context.tblUye
select th).ToList();
return getTumUyeler;
}
public static tblUye getUye(int id) {
tblUye getUye = (from th in Context.context.tblUye where th.Id == id
select th).FirstOrDefault(); return getUye;
public static tblUye getUyeWithSeoUrl(string username) {
tblUye getUye = (from th in Context.context.tblUye where th.SeoUrl == username
select th).FirstOrDefault(); return getUye;
}
public static tblUye getUyewithUserName(string username) {
tblUye getUye = (from th in Context.context.tblUye where th.KullaniciAdi == username
select th).FirstOrDefault(); return getUye;
}
public static tblUye getUyewithEmail(string email) {
tblUye getUye = (from th in Context.context.tblUye where th.KullaniciAdi == email select
th).FirstOrDefault(); return getUye; }
public static List<tblUye> getUyelerwithUniversite(int universiteId)
{
List<tblUye> getUyewithUniversite = (from th in
Context.context.tblUye where th.UniversiteId == universiteId select th).ToList();
return getUyewithUniversite;
public static List<tblUye> getHocalarwithUniversite(int universiteId)
{
List<tblUye> getUyewithUniversite = (from th in
Context.context.tblUye where th.UniversiteId == universiteId && th.Durum=="Hoca" select th).ToList();
return getUyewithUniversite;
}
public static List<tblUye> getUyelerwithFakulte(int fakulteId) {
List<tblUye> getUyewithFakulte = (from th in
Context.context.tblUye where th.FakulteId == fakulteId select th).ToList();
return getUyewithFakulte;
}
public static List<tblUye> getUyelerwitBolum(int bolumId) {
List<tblUye> getUyewithBolum = (from th in
Context.context.tblUye where th.UniversiteId == bolumId select th).ToList();
return getUyewithBolum;
}
public static List<tblUye> getUyelerwithUnvan(int unvanId) {
List<tblUye> getUyewithUnvan = (from th in
Context.context.tblUye where th.UniversiteId == unvanId select th).ToList();
return getUyewithUnvan;
}
public static List<tblUyeBaglanti> getUyeDavet(int hocaId) {
List<tblUyeBaglanti> getUyeDavet = (from th in
Context.context.tblUyeBaglanti where th.HocaId == hocaId && th.Durum == 0
select th).ToList(); return getUyeDavet;
}
public static List<tblUyeBaglanti> getOnayliUyeDavet(int Id, string durum)
{
List<tblUyeBaglanti> getOnayliUyeDavet = new List<tblUyeBaglanti>();
switch(durum){ case "Hoca":
getOnayliUyeDavet = (from th in
Context.context.tblUyeBaglanti where th.HocaId == Id && th.Durum == 1 select th).ToList(); break; case "Ogrenci": getOnayliUyeDavet = (from th in
Context.context.tblUyeBaglanti where th.OgrenciId == Id && th.Durum == 1
select th).ToList(); break;
case "Sirket":
getOnayliUyeDavet = (from th in
Context.context.tblUyeBaglanti where th.OgrenciId == Id && th.Durum == 1 select th).ToList(); break; } return getOnayliUyeDavet; }
public static tblUyeBaglanti getOgrenciUyeDavet(int hocaId, int ogrenciId)
{
tblUyeBaglanti getogrenciuyedavet = (from th in
Context.context.tblUyeBaglanti where th.HocaId == hocaId && th.OgrenciId == ogrenciId && th.Durum == 1 select
th).FirstOrDefault();
return getogrenciuyedavet;
}
public static bool onaylaUyeDavet(int hocaId) {
List<tblUyeBaglanti> istekList = (from th in
Context.context.tblUyeBaglanti where th.HocaId == hocaId && th.Durum == 0
select th).ToList();
{ istek.Durum = 1; } Context.context.SaveChanges(); return true; } }
EK- 9 : Üye Bilgileri Ġle Oturum Açan Metot
public string OturumAc(string UserName, string Password) {
var uye = (from th in context.tblUye
where th.KullaniciAdi == UserName && th.Sifre == Password
select th).FirstOrDefault();
if (uye != null) {
Session["oturum"] = 1; Session["uyeid"] = uye.Id;
Session["username"] = uye.KullaniciAdi; Session["email"] = uye.Email;
Session["ad"] = uye.Ad;
Session["soyad"] = uye.Soyad; Session["durum"] = uye.Durum; return "1";
else {
return "Kullanıcı adınız yada Ģifreniz hatalı."; }
}
EK - 10 : Üye Bilgileri Ġle Üyelik Açan Metot
protected void btnUyeOl_Click(object sender, EventArgs e) {
tblUye uye = new tblUye();
uye.Ad = Util.EscapeInputAttack(txtAd.Text); uye.Soyad = Util.EscapeInputAttack(txtSoyad.Text); uye.KullaniciAdi = Util.EscapeInputAttack(txtUserName.Text); uye.Sifre = Util.EscapeInputAttack(txtPassword.Text); uye.Email = Util.EscapeInputAttack(txtEmail.Text); uye.Durum = Util.EscapeInputAttack(((ddlDurum.SelectedItem!=null) ? ddlDurum.SelectedItem.Value : "")); uye.SeoUrl = Util.GenerateSeoUrl(txtAd.Text.ToLower() + "-" + txtSoyad.Text.ToLower()); uye.Resim = "blank.png"; context.AddTotblUye(uye); context.SaveChanges();
string oturum =
OturumAc(Util.EscapeInputAttack(txtUserName.Text), Util.EscapeInputAttack(txtPassword.Text));
if (oturum != "1") {
lblResult.Text = "Bir sorun oluĢtu! Lütfen tekrar deneyin."; } else { Response.Redirect("/anasayfa/"); } }
EK- 11: ġifre DeğiĢtiren Metot
protected void btnSifreDegistir_Click(object sender, EventArgs e) {
int uyeId = int.Parse(Session["uyeid"].ToString());
var sifre = (from th in context.tblUye where th.Id == uyeId
select th).FirstOrDefault(); if (sifre != null) { sifre.Sifre = Util.EscapeInputAttack(txtSifre.Text); context.SaveChanges(); Session["oturum"] = "0"; Session.Abandon(); Session.Clear(); Response.Redirect("/uye-girisi/cikis");
}
EK-12 : ġifre Hatırlatan Metot
protected void btnSifreGonder_Click(object sender, EventArgs e) {
string email = Util.EscapeInputAttack(txtEmail.Text);
var uye = (from th in context.tblUye where th.Email == email
select th).FirstOrDefault();
if (uye != null) {
MailSender m = new MailSender();
string adminMail = "info@MEZUNSAN.com";
MailAddress gonderici = new MailAddress(adminMail);
MailAddressCollection mc = new MailAddressCollection(); mc.Add(uye.Email);
m.Body += "<h1>MEZUNSAN ġifre Hatırlatma</h1><br /><br
/>ġifreniz : " + uye.Sifre ; m.From = gonderici; m.To = mc; m.Host = "mail.MEZUNSAN.com"; m.UserName = "info@MEZUNSAN.com"; m.Password = "xxxxxx"; m.Port = 587; if (m.SendMail()) {
lblResult.Text = "ġifreniz Email Adresinize GönderilmiĢtir.<br/><a
href=\"uye-girisi/\">Buraya tıklayarak tekrar giriĢ yapabilirsiniz.</a>"; }
} }
EK- 13 : KiĢisel Bilgileri DeğiĢtiren Metot
protected void btnKisiselBilgiDegistir_Click(object sender, EventArgs e) {
int uyeId = int.Parse(Session["uyeid"].ToString());
var uye = (from th in context.tblUye where th.Id == uyeId
select th).FirstOrDefault(); if (uye != null) { uye.Ad = txtAd.Text; uye.Soyad = txtSoyad.Text; uye.Email = txtEmail.Text; context.SaveChanges(); uplResim.SaveAs(Server.MapPath("/") + "/App_Data/Uyeler"); lblResult.Text = "KiĢisel Bilgileriniz DeğiĢtirildi.";
} }
EK-14 : Eğitim Bilgileri DeğiĢtiren Metot
protected void btnEgitimBilgiDegistir_Click(object sender, EventArgs e) {
var uye = (from th in context.tblUye where th.Id == uyeId
select th).FirstOrDefault(); if (uye != null) { uye.Durum = ddlDurum.SelectedItem.Value; uye.UniversiteId = Convert.ToInt32(ddlUniversite.SelectedItem.Value); uye.FakulteId = Convert.ToInt32(ddlFakulte.SelectedItem.Value); uye.BolumId = Convert.ToInt32(ddlBolum.SelectedItem.Value); context.SaveChanges();
lblResult.Text = "Eğitim Bilgileriniz DeğiĢtirildi."; }
}
EK-15 : Güvenli ÇıkıĢ Metot
protected void Page_Load(object sender, EventArgs e) {
Session["oturum"] = "0"; Session.Abandon(); Session.Clear(); }
EK-16 : Tüm ġehirleri Getiren Metot
protected void Page_Load(object sender, EventArgs e) {
if (!IsPostBack) {
if (RouteData.Values["SehirAdi"] != null) {
var sehir =
SehirHelper.getSehirWithSeoUrl(RouteData.Values["SehirAdi"].ToStrin g()); if (sehir != null) { SehirAdi = sehir.Ad; grdSehir.DataSource = UniversiteHelper.getUniversitesWithSehir(sehir.Id); grdSehir.DataBind(); } } } }
EK-17 : Üye Bilgilerini Getiren Metot
protected void Page_Load(object sender, EventArgs e) {
if (!IsPostBack) {
var uye =
UyeHelper.getUyeWithSeoUrl(RouteData.Values["UyeAdi"].ToString());
if (uye != null) {
ltrAdSoyad.Text = string.Format("{0} {1}", uye.Ad, uye.Soyad); lblAdSoyad.Text = string.Format("{0} {1} <br /> <div
uye.Soyad, uye.tblUniversite.Ad, uye.tblFakulte.Ad, (uye.Durum=="Ogrenci" ? "Öğrenci" : "Eğitmen"));
imgResim.ImageUrl = "/Assets/Images/Uyeler/" + uye.Resim.ToString();
} } }
ÖZET
Teknolojinin geliĢmesiyle internet ortamında veri yönetimi çok karmaĢık bir hale gelmiĢtir. Kullanıcıların ilgileri zamanla değiĢmiĢ ve veri tüketimi maksimum seviyeye çıkmıĢtır. Veri madenciliği ile iĢlenmemiĢ veriler iĢlenebilmektedir fakat iĢlenebilen veriler kullanıcılara sunulamamaktadır. ĠĢte bu noktada öneri sistemleri devreye girmektedir. Öneri sistemleri ile karmaĢık veri sunumları kaldırılmıĢ yerine kullanıcı ilgisine , eğilimine yada ürün çeĢidine yönelik veri sunumları ortaya çıkmıĢtır.
Bu tez çalıĢmasında sisteme kayıt olmuĢ kullanıcıların eğilimlerine yönelik öneriler sunularak kullanıcı tipi öneri sistemi kullanılmıĢtır. Kullanıcının ve çevresinin yeterlilikleri sisteme kayıt edilmiĢ ve öner sistemi mimarisi kullanılarak diğer kullanıcılara bu bilgiler sunulmuĢtur. Bu tezin amacı mezun sistemlerinin önerme sistemleri ile birleĢtirilerek kullanıcıların en doğru bilgiye en kısa yoldan ulaĢmalarını sağlamaktır.
Anahtar kelimeler : Önerme Sistemi, Mezun Sistemi, ASP.NET, Entity Framework
ABSTRACT
WEB BASED GRADUATE RECOMMENDER SYSTEM
With the development of internet technology, data management has become more and more complicated. Users interests have changed over time and data consumption has increased to the maximum level. Raw data can be rendered using the data mining methods , but the renderable data can not be exposed to users. At this point , suggestion systems steps in.
By using recommendation systems, complex data with presentations have been removed and the interests of the user, search tendency or product type has taken role on building presentations.
In this thesis study, user type suggestion system is conducted by using suggestions for registered users trends. The user's and people's in his/her life qualifications recorded to the system and the suggestion system architecture is used for serving information to the other users. Suggest and environment register and system architecture is presented to other users using this information. The purpose of this thesis is combining a proposition system with a graduate information system to achieve to the most accurate information in the shortest way.
Key Words: Recommender System, Graduate System, ASP.NET, Entity Framework
ÖZGEÇMĠġ
R. Galip GÜÇLÜOĞLU Microsoft Yazılım Uzmanı
KiĢisel Bilgiler