ASP NET

Asp.Net Sitelerde Store procedure Kullanımı

9. June 2010

Merhaba  arkadaşlar bu örnek makkalemde sizlere   asp.net sitelerde  store procedure  nasıl kullanırız  görelim

öncelikle  ben  kendime sql server  kitapevi  adında bir database kuruyorum    ve  bu database içinde 2 adet table oluşturuyorum   birinci table adı  kategoriler  ikinci table adıda  kitaplar

birinci  kategoriId , Kategori  ikinci  table ID , Adi KategoriID ,BasımEvi BasımTarihi Resim Link Fİyat

bir adet  Store Procedure Yazılım  aşağıda belirtilmiş   şekilde  oluçaktır unutmadan   kategorilerdeki  KatewgoriID ile kitaplardaki KategoriID  ilişkili bunuda hatırlatmış olayım

Alter Proc [sp_KitapBul]
@Kitap_Id int
as
Select kt.Kategori,kitap.Adi,kitap.BasimEvi,kitap.BasimTarihi,kitap.Resim,kitap.link,kitap.Fiyat from Kitaplar as kitap
inner join Kategori kt on  kt.KategoriID = kitap.KategoriID
 where ID=@Kitap_Id

Gelelim Web Sayfamıza  Default.aspx Sayfamızda bir adet  listbox ve bir adet gridView bulunmaktadır   kaynak kodlarımızıda   ekliyelim

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;

public partial class _Default : System.Web.UI.Page
{
    private SqlConnection cnn = new SqlConnection("Data Source=.;Initial Catalog=KitapEvi; Integrated Security=true");
    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack == false)
        {

            SqlCommand cmd = new SqlCommand("Select ID,Adi From Kitaplar", cnn);
            cmd.CommandType = System.Data.CommandType.Text;
            SqlDataReader dr;
            cnn.Open();
            dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

            ListBox1.DataSource = dr;
            ListBox1.DataTextField = "Adi";
            ListBox1.DataValueField = "ID";
            ListBox1.DataBind();
            dr.Close();
        }
    }
    protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
    {

        SqlCommand cmd = new SqlCommand("sp_KitapBul", cnn);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add("@Kitap_Id", SqlDbType.Int);
        cmd.Parameters[0].Value = ListBox1.SelectedValue;
        SqlDataReader dr;
        cnn.Open
            ();
        dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
        GridView1.DataSource = dr;
        GridView1.DataBind();
        dr.Close();
    }
}

 

Projenin Bitmiş Hali

 

Evet Arkadaşlar örnek bir makkalenin sonuna gelmiş olduk işallah sizler için yararlı bir sunum olmuştur Herkeze iyi calışmalar kolay gelsin

Saygılarım Orhan Türk

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET , C#

popup window using asp.net (asp.net popup pencere kullanımı)

26. May 2010

Merhaba arkadaşlar bu  örnek makkalemde sizlere  asp.net bir web sayfasında  popup pencere nasıl  kullanılır onu görelim

Örnek  uygulamam da sadece bir default web page ve bir adet xml.file  ekliyorum   örnek kodlara bakarsanız zaten  görmüş oluçaksınız

 -------> default web page kodum 

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Untitled Page</title>
     <script type="text/javascript">
 
function popup(url)
{
 var width  = 300;
 var height = 200;
 var left   = (screen.width  - width)/2;
 var top    = (screen.height - height)/2;
 var params = 'width='+width+', height='+height;
 params += ', top='+top+', left='+left;
 params += ', directories=no';
 params += ', location=no';
 params += ', menubar=no';
 params += ', resizable=no';
 params += ', scrollbars=no';
 params += ', status=no';
 params += ', toolbar=no';
 newwin=window.open(url,'windowname5', params);
 if (window.focus) {newwin.focus()}
 return false;
}
 
</script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
  

<a href="javascript: void(0)" onclick="popup('XMLFile.xml')"> Pencereyi Ortada Göster</a>

    </div>
    </form>
</body>
</html>

--------->Xml File kodum

<?xml version="1.0" encoding="utf-8" ?>
<Employee>
  <UserName>
    orhan
  </UserName>
  <Password>
    12345
  </Password>
  <Experience>
    2.5
  </Experience>
  <Department>
    Software And System Enginee
  </Department>
</Employee>

Evet arkadaşlar örnek bir makkalenin sonuna gelmiş olduk  tekrar yeni bir makkalede buluşmak üzere  herkeze iyi calışmalar kolay gelsin

Saygılarımla Orhan Türk

 

 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

C# Asp.Net Send Mail

14. December 2009

Merhaba arkadaşlar bu  örnek  dersimizde asp.net  bir web sayfada mail  send işlemi nasıl   oluşturulur görelim

ilk  önce  tablo yapımızı oluşturalım   örnek bir yapı  ben oluşturdum sizlerde  resimdeki  şablona  göre bir  tasarım  yaparsınız 

 

Gelelim şimdi  Code Behind Tarafına Kaynak  kodumuzu  bu  şekilde  yazıyoruz 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail;
using System.Windows;
using System.Windows.Forms;

namespace SendMail
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnsend_Click(object sender, EventArgs e)
        {
            //MailMessage message = new MailMessage();
            //message.To.Add(txtto.Text);
            ////example adres mail@mail.com
            //message.From = new MailAddress(txtfrom.Text);
            //message.Subject = txtsubject.Text;
            //message.Body = txtmessage.Text;

            if (rdhtml.Checked == true)
            {
                Html();
                MessageBox.Show("Mail Gönderildi");
                CleanTable();

            }

            else if (rdmetin.Checked == true)
            {
                Metin();

                MessageBox.Show("Mail Gönderildi");
                CleanTable();
            }

        }

        protected void rdhtml_CheckedChanged(object sender, EventArgs e)
        {

            Html();
        }

        void Html()
        {

            try
            {
                MailMessage message = new MailMessage();
                message.To.Add(txtto.Text);
                //example adres mail@mail.com
                message.From = new MailAddress(txtfrom.Text);
                message.Subject = txtsubject.Text;
                message.Body = txtmessage.Text;
                message.IsBodyHtml = true;
                //Attach file using FileUpload Control and put the file in memory stream

                if (ContentFile.HasFile)
                {
                    message.Attachments.Add(new Attachment(ContentFile.PostedFile.InputStream, ContentFile.FileName));
                    SmtpClient smtp = new SmtpClient();

                    //  smtp.Host = "smtp.gmail.com"; //Or Your SMTP Server Address
                    smtp.Host = txtsmtpserver.Text;
                    smtp.Credentials = new System.Net.NetworkCredential(txtusername.Text, txtpass.Text);
                    //"YourGmailID@gmail.com", "YourGmailPassword");

                    //Or your Smtp Email ID and Password
                    smtp.EnableSsl = true;
                    smtp.Send(message);


                }
            }
            catch (Exception ex)
            {

                Response.Write("</br> " + ex.Message);
            }

        }
        void Metin()
        {

            try
            {
                MailMessage message = new MailMessage();
                message.To.Add(txtto.Text);
                //example adres mail@mail.com
                message.From = new MailAddress(txtfrom.Text);
                message.Subject = txtsubject.Text;
                message.Body = txtmessage.Text;
                message.IsBodyHtml = false;
                //Attach file using FileUpload Control and put the file in memory stream

                if (ContentFile.HasFile)
                {
                    message.Attachments.Add(new Attachment(ContentFile.PostedFile.InputStream, ContentFile.FileName));
                    SmtpClient smtp = new SmtpClient();

                    //  smtp.Host = "smtp.gmail.com"; //Or Your SMTP Server Address
                    smtp.Host = txtsmtpserver.Text;
                    smtp.Credentials = new System.Net.NetworkCredential(txtusername.Text, txtpass.Text);
                    //"YourGmailID@gmail.com", "YourGmailPassword");

                    //Or your Smtp Email ID and Password
                    smtp.EnableSsl = true;
                    smtp.Send(message);
                }
            }
            catch (Exception ex)
            {

                Response.Write("</br> " + ex.Message);

            }

        }

        protected void rdmetin_CheckedChanged(object sender, EventArgs e)
        {
            Metin();
        }

        void CleanTable()
        {
            txtfrom.Text = "";
            txtmessage.Text = "";
            txtpass.Text = "";
            txtsmtpserver.Text = "";
            txtsubject.Text = "";
            txtto.Text = "";
            txtusername.Text = "";
        }

    }
}

Eh bu kadar yazdık size birde kaynak kod verelim :İndir

Evet arkadaşlar  sizlerde artık  asp.net tabanlı  sayfalar da  smtp  mail sistemi kullanarak   kullanıcılarınıza mail  gönderebilirsiniz   evet  bir örnek projenin daha sonuna gelmiş  olduk 

yeni bir örnek projede görüşmek üzere herkeze başarılar 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

Ajax Web Timer

14. December 2009

Evet arkadaşlar bu örnek dersmizde  Ajax  tabanlı  bir  web sayfasında  bir  timer web sayfanmızda nasıl  gösteriz görelim 

örnek  proje 'nin sunumu 

 form ' da bir adet  ScriptManager , bir adet label  bir adet  timer ekliyoruz  ve  code page  tarafında yapacağımız işlem ise  şu kodlar 

 

örnek kodlar 

 

 namespace Ajax_Web_Timer
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Timer1_Tick1(object sender, EventArgs e)
        {
            Label1.Text = DateTime.Now.ToString();
        }
    }
}

Evet arkadaşlar yeni bir örnek  makkalede  görüşmek  üzere herkeze  iyi  calışmalar 

 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Ajax, ASP NET ,

Asp Net ADO Connection to MySQL

11. June 2009

Merhaba arkadaşlar  bu  makkalemide sizlere aspnet sayfalarında  mysql baglantısını  nasıl  oluştururuz görelim 

ASP.Net Webpage (.aspx)

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>MySql Test</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:GridView ID="GridView1" runat="server" BackColor="White" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" Style="position: relative" AllowSorting="True" GridLines="Vertical" CaptionAlign="Left" AutoGenerateColumns="False" OnSorting="GridView1_Sorting" EmptyDataText="<strong>There are no records to show.</strong>">
          <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
          <RowStyle ForeColor="Black" BackColor="#EEEEEE" />
          <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
          <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
          <HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
          <AlternatingRowStyle BackColor="Gainsboro" />
          <Columns>
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:Button ID="btnDelete" CommandName="Delete" runat="server" Text="Delete" CssClass="okbutton" OnClientClick="return confirm('Are you sure you wish to delete this item?');" />
                </ItemTemplate>
            </asp:TemplateField>
            <asp:boundfield datafield="productID" readonly="True" headertext="ID" SortExpression="productID"/>
            <asp:boundfield datafield="productName" readonly="True" headertext="Style" SortExpression="productName"/>
            <asp:hyperlinkfield datatextfield="URL" datatextformatstring="view" datanavigateurlfields="URL" datanavigateurlformatstring="{0}" headertext="URL" target="_blank" />
          </Columns>
        </asp:GridView>
    </form>
</body>
</html>

Code Behind (.cs)

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MySql.Data.MySqlClient;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
    private MySqlConnection conn;
    private DataTable data;
    private MySqlDataAdapter da;
    private MySqlCommandBuilder cb;
    private string SortString = "";
    private string SortOrder;
    private string SortExpression;
 
    protected void Page_Load(object sender, EventArgs e)
    {
        SortOrder = (string)Session["SortOrder"];
        SortExpression = (string)Session["SortExpression"];

        if (SortOrder == null)
            SortOrder = "ASC";

        if (SortExpression == null)
            SortExpression = "productID";
       
        if (!IsPostBack)
            QueryServer("SELECT * FROM database.table ORDER BY " + SortExpression + " " + SortOrder);
    }

    protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
    {
        SortString = e.SortExpression;

        QueryServer("SELECT * FROM database.table ORDER BY " + SortString + " " + SortOrder);

        if (SortOrder == "ASC")
          SortOrder = "DESC";
        else  
          SortOrder = "ASC";

        Session["SortOrder"] = SortOrder;
        Session["SortExpression"] = e.SortExpression;
    }

    protected void QueryServer(string cmd)
    {

        if (cmd == "")
            cmd = "SELECT * FROM database.table";

        string connStr = String.Format("server={0};user id={1};

password={2}; database=mysql; pooling=false", "localhost", "username", "password");
        try
        {
            conn = new MySqlConnection(connStr);
            conn.Open();

            MySqlDataReader reader = null;

            try
            {
                da = new MySqlDataAdapter(cmd, conn);
                data = new DataTable();
                da.Fill(data);

                GridView1.DataSource = data;
                GridView1.AllowSorting = true;
                GridView1.DataBind();
            }
            catch (Exception ex)
            {
                throw new Exception("Failed to populate database list: " + ex.Message);
            }
            finally
            {
                if (reader != null) reader.Close();
            }

        }
        catch (MySqlException ex)
        {
            throw new Exception("Error connecting to the server: " + ex.Message);
        }
    }

    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        int index = e.RowIndex;
        string id = GridView1.Rows[index].Cells[1].Text;

        string command = "DELETE FROM database.table WHERE logID = " + id + " LIMIT 1;";
        command += "SELECT * FROM database.table ORDER BY " + SortExpression + " " + SortOrder;

        QueryServer(command);
    }
}


evet arkadaşlar bir makkalenin  sonuna daha gelmiş olduk  yeni bir makkalede görüşmek  üzrere herkeze başarılar

Saygılarımla Orhan Türk  

 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

WebServisinin temel oluşumu

10. June 2009

 

Web servisleri

Merhaba Arkadaşlar  bu makkalemde  sizlere webservislerden  örnekler  gösterip  bize artıları  neler , eksleri  nelermiş   görelim; 

: Kaynak

       Web services architecture
W3C Working Group Note 11 February 2004 http://www.w3.org/TR/ws-arch/

       A Web Services Primer
Venu Vasudevan 4 April 2001
http://webservices.xml.com/pub/a/ws/2001/04/04/webservices/index.html

About Flash Remoting MX
http://livedocs.adobe.com/flashremoting/mx/Using_Flash_Remoting_MX/

Web  Servisi Nedir ?

       Bir ağ üzerindeki makinalar arasında birlikte işler etkileşimler sağlayan yazılım sistemleri.

       Genel tabiriyle SOAP standardını kullanan ve HTTP üzerinde taşınan XML biçimli mesajlardan oluşan, sunucu ve istemci arasındaki iletişimi sağlayan servisler.

       Geleneksel sunucu/istemci modelleri ile kıyaslandığında temel fark bir GUI sağlanmamasıdır.

Kim Düşünmüş ?

       WebMethods ilk “remote web service” olarak isimlendirilebilecek modellerden birini 1997 yılında tasarlamıştır.

Amaç ?

       Farklı üreticilerden çıkan farklı uygulamaların, iş mantığını, veriyi ve işlemleri ilave kod gerektirmeden ağ üzerinde paylaşmasıdır.

WebServislerin Artıları  Bize Göre Nelerdir ?

       Birlikte işleyebilirler

       Kullanımı oldukça kolaydır

       Tekrar kullanılabilirler

       Aynı anda her yerde mevcut olabilirler

       İnsanlar ve bilgisayarlar tarafından kullanılabilirler

        

WebServislerin Eksileri  Nelerdir ?

       Güvenlik ve basitlik:
Web servis mesajları internet trafiği üzerinde olduğu için kolaylıkla ticari ağların içerisine girebilir. Secure HTTP kullanıldığında kimlik doğrulama ve veri bütünlüğü sağlanabilir; fakat birçok firma daha fazla güvenlik tedbiri istiyor 

WebServis Mimarisi:

 

Universal Description, Discovery and Integration (UDDI)

       UDDI, OASIS (Organization for the Advancement of Structured Information Standards) tarafından geliştirilmiş bir gösterimdir.

       UDDI Web servis açıklamalarını aramak ve saklamak için kullanılır.

       UDDI üç farklı seviyede web servis açıklamalarını saklar.

      Beyaz sayfalar firmaların web servisleri hakkında bilgi içermez, fakat bunun yerine servis sunan firma hakkında bilgi verir.

      Sarı sayfalar, web servislerin sınıflandırmasını sağlar ve bu sayede bir servisin bulunmasını kolaylaştırır.

      Yeşil sayfalar web servislerin teknik açıklamalarını tutar.

 

Web Service Description (WSD)

 

       WSD bir web servisinin ne yapabileceğini, nerede bulunduğunu ve nasıl çalıştırılacağını tanımlar.

       Bir servisin tanımında aşağıdaki elemanlar kullanılır.

      Types

      Message

      Operation

      Port Type

      Binding

      Port

      Service

       Servis Tanımı - WDSL örneği

 

<?xml version="1.0"?>

<definitions name="StockQuote"

                targetNamespace="http://localhost/stockquote.wsdl"

                xmlns:tns="http://localhost/stockquote.wsdl"

                xmlns:xsd1="http://localhost/stockquote.xsd"

                xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

                xmlns="http://schemas.xmlsoap.org/wsdl/">

<types>

<schema targetNamespace="http://localhost/stockquote.xsd" xmlns="http://www.w3.org/1999/XMLSchema"> <element name="TradePriceRequest">

                               <complexType>

                                               <all>

                                                               <element name="tickerSymbol" type="string"/>

                                               </all>

                               </complexType>

                </element>

           <element name="TradePrice">

                               <complexType>

                                               <all>

                                                               <element name="price" type="float"/>

                                               </all>

                               </complexType>

                </element>

</schema>

</types>

<message name="GetLastTradePriceInput">

                <part name="body" element="xsd1:TradePriceRequest"/>

</message>

<message name="GetLastTradePriceOutput">

                <part name="body" element="xsd1:TradePrice"/>

</message>

 

SOAP
(Simple Object Access Protocol)

       Dağıtık uygulamaların ve web servislerinin birbirleri ile haberleşmelerini sağlamak amacıyla tasarlanmış bir protokoldür.

       SOAP’ın en büyük özelliği yapısının XML üzerine kurulu olmasıdır. Dolayısı ile SOAP, XML in sağladığı esneklik, kolaylık ve platform bağımsızlığı özelliklerini içerir.

       Diğer protokollerin aksine SOAP, HTTP protokolünü kullandığı ve taşıdığı mesajlar düz yazı dosyası halinde olduğu için firewall dostudur.

 

SOAP Request örneği

POST /StockQuote HTTP/1.1

Host: www.stockquoteserver.com

Content-Type: text/xml;

 

 

charset="utf-8"

Content-Length: nnnn

SOAPAction: "Some-URI"

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"

SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

                <SOAP-ENV:Body>

                               <m:GetLastTradePrice xmlns:m="Some-URI">

                                               <symbol>MOT</symbol>

                               </m:GetLastTradePrice>

                </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

 

Sample Case :

 

ASP.NET Web Servis Örneği

<%@ WebService Language="VB" Class="TempConvert" %>

Imports System

 

 

Imports System.Web.Services

Public Class TempConvert :Inherits WebService

<WebMethod()> Public Function FahrenheitToCelsius (ByVal Fahrenheit As Int16) As Int16

                Dim celsius As Int16
                celsius = ((((Fahrenheit) - 32) / 9) * 5)
                Return celsius

End Function

<WebMethod()> Public Function CelsiusToFahrenheit (ByVal Celsius As Int16) As Int16

                Dim fahrenheit As Int16
                fahrenheit = ((((Celsius) * 9) / 5) + 32)
                Return fahrenheit
End Function

End Class

 

HTML Entegrasyonu

<form target="_blank" action='http://localhost/webservices/tempconvert.asmx/FahrenheitToCelsius' method="POST">

                <table>

                               <tr>

                                               <td>

                                               Fahrenheit to Celsius:

                                               </td>

                                               <td>

                                               <input class="frmInput" type="text" size="30" name="Fahrenheit">

                                               </td>

                               </tr>

                               <tr>

                                               <td>

                                               </td>

                               <td align="right">

                                               <input type="submit" value="Submit" class="button">

                                               </td>

                               </tr>

                </table>

</form>

Response:

<?xml version="1.0" encoding="utf-8" ?>

<short xmlns="http://tempuri.org/">38</short>

Evet  arkadaşlar bir makkalenin sonuna  gelmiş  olduk  tekrar  yeni bir makkalede görüşmek üzere herkeze  başarılar 

Saygılarımla Orhan Türk :

 

 

 

 

 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET , C# ,

Asp.Net Dinamik Meta Tag Ekleme (Veri Tabanından Veri çekerek

15. May 2009

Asp.Net Dinamik Meta Tag Ekleme (Veri Tabanından Veri çekerek.)                                  

Merhaba Arkadaşlar bu makkalede sizlere Canlı Meta Tagların Nasıl oluşturulduğunu Veri tabanından nasıl çekildiğini göstereceğim. bunun için VeriTabanı oluşturmalıyız. Ve 3 tane alan belirlemeliyiz. Bunlar Keywords,PageTitle,Description ve Tablomuzun ismi MetaTag olsun.
şimdi gerisini Aşağıdaki kodları izleyerek yapabilirsiniz...

MasterPage.Cs içinde Sayfanın Page Load' ına Yazılacak Kod
 

protected void Page_Load(object sender, EventArgs e)

{

//Meta ve Keywordslar

      //Önce Dataları Veritabanından Okuyalım

        string PageTitle = "";

        string Keywords = "";

        string Description = "";

 

        SqlConnection sqlCon = new         SqlConnection(ConfigurationManager.ConnectionStrings["MetaTag"].ToString());

        sqlCon.Open();

        SqlCommand sqlCom = new SqlCommand("SELECT Keywords, PageTitle, Description FROM MetaTag",sqlCon);

        SqlDataReader sqlDr = sqlCom.ExecuteReader();

        if (sqlDr.Read())

        {

            Keywords = sqlDr["Keywords"].ToString();

            PageTitle = sqlDr["PageTitle"].ToString();

            Description = sqlDr["Description"].ToString();

        }

        sqlCon.Close();

        Page.Header.Title = PageTitle;

        //  Metadata tagını tanımlamak

        HtmlMeta metaDescription = new HtmlMeta();

        metaDescription.Name = "Robot";

        metaDescription.Content = "index,follow";

        // Sayfaya ekliyoruz.

        Page.Header.Controls.Add(metaDescription);

        // İkinci bir metadata tagını eklemek

        HtmlMeta metaKeywords = new HtmlMeta();

        metaKeywords.Name = "googlebot";

        metaKeywords.Content = "index,follow";

        Page.Header.Controls.Add(metaKeywords);

}

Evet bir makkelenin sonuna daha gelmiş olduk işallah bu makkalede sizlere yararlı bir bilgi olmuştur yeni bir makkalede buluşmak üzere

Saygılarımla Orhan Türk

Kaynak : Web

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

ASP.NET 2.0 validation in Group

27. April 2009

Arkadaşlar  bu projede sizlere asp net 2.0 Validation control nasıl kullanırız görelim

 İlk önçe Visual studio yeni bir web projesi oluşturalım












Evet arkadaşlar bir projenin sonuna gelmiş olduk projenin  Full  Source Code Buraya Ekliyorum

ValidationGroups.rar (1,95 kb)

Rar Şifre www.orhanturk.com.tr 

 

Saygılarımla Orhan Türk 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET , Tüm Projelerim ,

Asp net Web Sesion Created

25. April 2009

 

ASP  NET WEBSESİON  CREATED

Merhaba Arkyadaşlaruzun bir  aradan sonra sizlere visual studio  asp  net websesion nesnesini 

Nasıl yaratırız onu  sunumu  anlatıyor  olacağım evet  projemizin oluşumu  için  gerekli kodlarımızı   yazmaya başlıyalım

Visualstudio    2008  acarak  web new proje  webprojesini  seciyoruz

 Ve  birdefault aspx sayfamız oluşuyor

Sonraki  işlemwen desing  tarafında form  üzerine toolbox 

2 adet textbox

1 adet button

1 adetcheckbox  ekliyoruz

1 AdetRedirect.aspx  formmuz olsun

Form load işleminde kısa bir kod yazıyoruz  bu  kodumuzun acılımı arkadaşlar

       Response.Write(Page.User.Identity.Name);

 Bağlı oldugumuz  makinamızın  bize   adını veriyor  olaçak

Button 1 ClickEvent  Kodlarımızı Yazalım

 if (txtUserName.Text== "Orhan" &&txtPassword.Text == "12345")

        {

           FormsAuthentication.RedirectFromLoginPage(txtUserName.Text,chkRemember.Checked);

           //lblSonuc.Text = "SuccessFull";

           Response.Redirect("Redirect.aspx");

        }

        else

        {

           lblSonuc.Text = "Error";

        }

Bu işlemden sonra artık  projemizi derliyelim ve sonucu görelim artık

Projemiz olmuş olucaktır

Evet Arkadaşlar Bir  makkalenin bitimindegeldik  bu makkalede asp  net web sesion nesnesini  nasıl kullanırız onu  görmüş olduk

Saygılarımla Orhan Türk

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

C# Net Kullanarak Xml Web Service Oluşturmak( Net Xml Web Service Using C # to create)

25. April 2009

 

 

XML Web Servisleri 1

 Konular:asp.net,

• XML Web Servislerini Anlamak

• XML Web Servisleri Olturmak

• XML Web Servislerine İstemci Olmak

XML Web Servislerini Anlamak

Xml Web Servisleri yazılan program kodunu çalıştıran bileşenlerdir. Sıradan bileşenlerden farkı bu işlevi farklı bilgisayarlara da sunmasıdır. XML Web Servislerine farklı bir bilgisayar ve fark bir platformdan istemci olunabilir.

Yani XML Web Servisleri fark platformalar arasında ortak olarak kullılanbilen bileşenlerdir. XML Web Servisleri ile fark platformlar arasında veri aktamada belli standartlar sayesinden oldua kolaylaşmaktadır.

XML Web Servisleri standart olan protokoller üzerinde çalışır. Bunlar, HTTP, XML, SOAP standartlardır. XML Web

Servisleri adından da anlaşıldığı gibi mesaj alış verişi için XML standardını kullanır. 

XML in bir standart olma ve herhangi bir platforma bağlı olmama sayesinde XML Web Servisleri fark platformların konmasını, veri alış verişini sağlar. Bu sayede uygulam geliştirme aşamasında programcılar fark sistemleri kullanan uygulamalar yazarken standartla kullanarak işlerini daha kolay bir şekilde yapabilirler.

 XML Web Servisleri HTTP protokolü üzerinden mesaj alış verişin yaptığı için internet üzerinden bir XML Web Servisine erişim yapılabilmektedir. Ek olarak bir intranetde de XML Web Servisi uygulamasu yapılabilir. Önemli olan XML Web Servisinin HTTP protokolü ile yani bir web sunucusu ile sunuluyor olmasıdır. Tabiki .NET Framework üzerinde programlanmış olan bir XML Web Servisinin sunulabilmesi için Internet Information Services (IIS) ve .NET Framework gerekmektedir.

 XML Web Servislerinin Alt Yapısı

 XML Web Servislerinin sağladığı faydalardan birisi XML Web Servisine istemci olacak ve o servisi kullanacak olan uygulamanın o servisin sadece adresini bilmesi yeterlidir. Bu şekilde servise eriştikten sonra XML Web Servisinin metodla çalıştırılabilir.

XML Web Servisleri Dizinleri

Yayında bulunan ve kaydedilm servisleri listeleyen merkezi noktalar, dizinler vardır. Bu dizinler sayesinde arama yapıp istediğiniz bir XML Web Servisine ulaşabilirsiniz. Bu dizinlerin XML Web Servislerini listelemesini belirleyen tamalamalara Universal Description, Discovery and Integration (UDDI) denir.

Çeşitli XML Web Servisleri dizinleri mevcuttur. Bunlardan bir tanesi Microsoft’un XML Web Servisi dizini olan, http://uddi.microsoft.com sitesidir. Bu dizinlerde istediğiniz şekilde XML Web Servisi arama yapabileceğiniz gibi XML Web Servislerinizide bu dizinlere kaydedebilirsiniz.

XML Web Servisleri Bulunması

Bu işlem ile istemciler XML Web Servislerini tamlayan (WSDL) dokümanların konumlarını alırlar. Bu adım ile istemciler XML Web Servislerinin konumları ile ilgili bilgi sahibi olurlar.

XML Web Servisleri Tanımlaması

Xml Web Servisi Tamlama XML Web Servisinin biçimi hakkında bilgileri içeren bir XML dokümanıdır. Bu doküman ile XML Web Servisi üzerinde yapılabilecek olan işlemler istemciye bildirilir.

XML Web Servisinin İşleyişi

 1. Eğer kullanılacak XML Web Servisinin adresi bilinmiyorsa bir UDDI dizini yardımı ile bir XML Web Servisi bulunur.

 2. Discovery dosyasına (.disco) yapılan istek ile web servisinin tamalama dosyasına yönlenilir.

 3. Web Servisinin açıklama dosya olan WSDL dosyasına istek yapılır. Servis biçimi öğrenilir.

 4. Artık XML Web Servisinin metodla çalıştırılmaya hazır olarak istemcinin hizmetindedir. XML Web Servisinin metodla çalıştırılır.

 Bir istemci UDDI aracılığı ile bir XML Web Servisine eriştiğinde UDDI servisi istemciye XML Web Servisinin discovery dosya olan .disco uzantılı dosyanın adresini döner. Bu .disco dosya XML Web Servisini tanımlayan kaynaklara link içerir.

 <?xml version="1.0" ?>

<disco:discovery xmlns:disco="http://schemas.xmlsoap.org/disco" xmlns:wsdl="http://schemas.xmlsoap.org/disco/wsdl">

<wsdl:contractRef ref="http://www.siteniz.com/Hesapci.asmx?WSDL"/>

</disco:discovery>

 İstemci .disco dokümanındaki bilgileri kullanarak sunucudan XML Web Servisi açıklama dosyasına istek yapar. Bu dosya WSDL dosyadır. WSDL (Web Services Description Language) XML tabanlı bir dosyadır ve istemcinin XML Wev Servisinin işlevlerini öğrenip etkileşime geçebilmesini sağlar.

Bir istemci XML Web Servisinin metodları çalıştırması için gerekli olan işlemler şunlardır.

1. İstemci yazılım istemci tarafında kalmak üzere bir nıf yapısı oluşturur. Bu sınıf XML Web Servisinin WSDL dosyanda tamlanan yapısına uygundur. Yani XML Web Servisinde hizmete açılan sınıfın yapısı ile ay yapıdadır. Buna aracı (proxy) nesne denir.

2. İstemci sunucu sıfın bir metodunu çağırır.

3. İstemcideki XML Web Servisi altyapısı metod çağrısını ve metodun parametrelerini SOAP mesajı olarak serialize eder. Ve bu mesajı XML Web Servisine yönlendirir.

4. Sunucudaki XML Web Servisi altyapısı gelen SOAP mesajını deserialize eder, nesnenin sunucu üzerinde bir örneğini oluşturur ve çağrı yapılan metoda parametreleri ile beraber çağrı yapar.

5. XML Web Servisi metodu çalıştırı ve geriye dönen değerleri altyaya döndürür.

6. XML Web Servisi altyası dönecek değeri SOAP mesajı olarak serialize eder ve bu mesajı ağ üzerinden istemciye gönderir.

7. İstemci bilgisayardaki altya gelen SOAP mesajı deserialize eder ve değerleri aracı (proxy) nesneye aktarır.

 8. Aracı (proxy) nesne ise aldığı değerleri kendi istemcisine aktarır.

 Bir XML Web Servisi oluşturabilmek için .NET Frameworkün bir bileşeni olan ASP.NET altyapısı kullanılır.

 XML Web Servisleri Oluşturmak

XML Web Servisi oluşturmak bir bileşen oluşturmaktan fark değildir. XML Web Servisleri ağ ortamının avantajı ağ ortamı üzerinden paylaşılabilir olmasıdır.

Visual Studio.NET ile Yeni Bir Web Servisi oluşturmak için:

1. File>New Project menü seçeneğine tıklayın.

2. Açılan New Project penceresinden uygulama geliştirmek istediğiniz dili seçtikten sonra ASP.NET Web Service seçeneğini seçerek OK butonuna basın.

3. Açılan projede .asmx uzantılı dosyalar web servisi uygulama dosyalarıdır.

 

 

 Web Servis Projesinde Yer alan dosyalar

 AssemblyInfo.vb : Bir assemblynin versiyon bilgisi gibi bilgilerini düzenlemek için kullanılan dosyadır. Tüm .NET

projelerinde yer alan bir dosyadır.

 Global.asax ve Global.asax.vb : Global.asax ve onun codebehind dosya olan Global.asax.vb dosya ile uygulama ve oturum bazında olay yönetimi yapılabilir. Bu dosya uygulamanın ana klaründe yer almalıdır.

 Service1.asmx ve Service1.asmx.vb : Bu iki dosya Service1.asmx ve codebehind dosya olan Service1.asmx.vb dosyala bir Web Servisini oluştururlar. Service1.asmxin görevi IIS tarafında Web Servisinin bulunabilmesini sağlamak ve Web Servisi için giriş nokta olmaktır.

Service1.asmx.vb dosya yazılan program kodları içeren dosyar. ASP.NET uygulamalarında olduğu gibi uygulama derlenince sonra olan .dll dosyasında bu kodlar yer alır.

Service1.asmx.vb dosyasının içeriği

Public Class Service1

Inherits System.Web.Services.WebService methodlar

methodlar

End Class

 

 

 Web Servislerinin codebehind dosyala System.Web.Services.WebService sınıfından miras alırlar.

 Web Servisi içerisindeki metodun intenet üzerinden sunulabilmesi <WebMethod()> özelliği ile nitelendirilmesi gerekmektedir.

 <WebMethod()> Public Function HelloWorld() As String

Return "Hello World" End Function

 Yukarıdaki kod bloğunda yazılan HelloWorld ismindeki fonksiyon web servisi üzerinden hizmete açılmış bir function tamlamasıdır. Bu fonksiyonun web servisinden sunulması sağlayan ifade <WebMetod()> ifadesidir.

Yeni Proje Açtığınız da olturulan Web Servisi dosyasının içeriği şu şekildedir.

 

  Bu şekilde bir WebServisi tamlamasını yapıp web üzerinden XML Web Servisi olarak sunulan bileşeninizi yaptığınızda ay bilgisayar üzerinden servise http://localhost/webservice1/service1.asmx şeklinde erişim yaptığınız zaman XML Web Servis alt yapı bir yardım sayfa sunacak ve servis üzerindeki metodla bu arabirim sayesinde listeleyip, test etmenizi sağlayacaktır. Bu sadece ay bilgisayar üzerinden erişimlerde çalışır.

Ayca açılan bu yardım sayfasında Web Servisindeki metodların bilgilerini sunan SOAP biçiminde XML

tamalamalarıda gözükmektedir.

 Servis Açıklama Sayfası

Bir XML Web Servisi için yapılan servis açıklamasına Web Services Description Language (WSDL) denir. Servis yardım sayfasında Service Description” isminde bir link gökmektedir. Bu link servisinde WSDL açıklamalarına link vermektedir. Bu linkin yolu aşağıdaki şekildedir.

http://sunucuadresi/servisdizini/service.asmx?WSDL gerçek bir örneğine bakarsak localhost üzerindeki WebService2

içindeki Service1.asm servisi için link şu şekilde olmalıdır. http://localhost/WebService2/Service1.asmx?WSDL

Bu adrese erişebilmek için yardım sayfasındaki linki kullanmak zorunlu değildir. Bu adresi web tarayıcısının adres kısmına yazıp, sayfaya istek yaptığınız zaman ay WSDL tamalamasını görebilirsiniz. Tabiki adresinde sonuna

?WSDL querystring ifadesini eklemeniz gerekmektedir.

Yeni oluşturulm ve içinde sadece HelloWorld isminde metodumuz olan bir XML Web Servisi için WSDL XML

doküma şu şekilde olacaktır.

<?xml version="1.0" encoding="utf-8"?>

<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://tempuri.org/WebService2/Service1" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://tempuri.org/WebService2/Service1" xmlns="http://schemas.xmlsoap.org/wsdl/">

<types>

<s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/WebService2/Service1">

<s:element name="HelloWorld">

<s:complexType />

</s:element>

<s:element name="HelloWorldResponse">

<s:complexType>

<s:sequence>

<s:element minOccurs="0" maxOccurs="1" name="HelloWorldResult" type="s:string" />

</s:sequence>

</s:complexType>

</s:element>

</s:schema>

</types>

<message name="HelloWorldSoapIn">

<part name="parameters" element="s0:HelloWorld" />

</message>

<message name="HelloWorldSoapOut">

<part name="parameters" element="s0:HelloWorldResponse" />

</message>

<portType name="Service1Soap">

<operation name="HelloWorld">

<input message="s0:HelloWorldSoapIn" />

<output message="s0:HelloWorldSoapOut" />

</operation>

</portType>

<binding name="Service1Soap" type="s0:Service1Soap">

<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />

<operation name="HelloWorld">

<soap:operation soapAction="http://tempuri.org/WebService2/Service1/HelloWorld" style="document" />

<input>

 

<soap:body use="literal" />

</input>

<output>

<soap:body use="literal" />

</output>

</operation>

</binding>

<service name="Service1">

<port name="Service1Soap" binding="s0:Service1Soap">

<soap:address location="http://localhost/WebService2/Service1.asmx" />

</port>

</service>

</definitions>

 Bu dosyanın SOAP biçiminde düzenlenm bir XML dosyasıdır. XML Web Servisine daha sonra bir istemci olarak bağlanmak istediğinizde XML Web Servisi istemci altyapısı bu dosyadaki tamlamalara bakarak bir aracı (proxy) sınıf oluşturacak ve istemci tarafından bu XML Web Servisine erişilebilmesini sağlayacaktır.Bu aracı sınıfın oluşturulma işlemi Visual Studio.NET arabirimi ile referans verildiğinde yapılacaktır.

F0.05pt">akat Visual Studio.NET kullanmadan bir XML Web Servisine istemci olmak istiyorsanız.NET Frameworkün bir parçası olan WSDL.exe komut satırı uygulamasını kullanabilirsiniz.

Evet Arkadaşlar  bir makkalenin sonuna gelmiş olduk  yeni bir makkalede görüşmek üzere herkeze başarılar 

Saygılarımla Orhan Türk:

 

12455127.medium.jpg (33,06 kb)

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

ASP NET ,

Sayfa 0.109375 saniyede yuklendi.