ASP.NET de eğer sayfamızda birden fazla aynı id de kontrol varsa bu hatayı alırız:
The ID ‘*’ is already used by another control.
Kontrolün id sini düzelttiğimiz zaman problem ortadan kalkar.
ASP.NET de eğer sayfamızda birden fazla aynı id de kontrol varsa bu hatayı alırız:
The ID ‘*’ is already used by another control.
Kontrolün id sini düzelttiğimiz zaman problem ortadan kalkar.
TcKimlikNo web servisi kapanıp ücretli bir hale geldikten sonraKimlik Numarası tesbiti yapmamız gereken durumlarda sıkıntıya düşüyoruz.
Fakat TC kimlik numaraları bir algoritmaya göre verildiği için basit formlarda kullanıcı’nın doğru kimlik numarası girip girmediğini tesbit etmek için şu metodu kullanabiliriz:
public bool TCKimlik(string no)
{
if (no.Length != 11) { return false; }
int sayi = 0;
for (int i = 0; i < 10; i++) sayi += int.Parse(no.Substring(i, 1));
return sayi.ToString().Substring(sayi.ToString().Length - 1, 1) == no.Substring(10, 1) ? true : false;
}
Algoritmanın temeli; ilk 10 rakamın toplamının onlar basamağı, 11. rakama eşit çıkmak zorunda,
Burada kullanıcı deneme yanılma yaparak doğru gösterebilir tabi, ama hiç yoktan iyidir…
Web uygulamalarımızda çoğu zaman değerini dışarıdan almaya ihtiyaç duyduğumuz değişkenler olur bunları tutmak için en iyi yöntem Web.Config içindeki appSettings bölümüdür.
<appSettings>
<add key=”HostName” value=”127.0.0.1″ />
</appSettings>
Eklediğimiz bu parametrenin değerine şu şekilde ulaşabiliriz:
VB.NET
AppSettings.Item(“HostName“)
C#.net
ConfigurationSettings.AppSettings[“HostName“].ToString();
Fakat bu sınıfı kullanabilmek için code sayfamızın başına System.Configuration.ConfigurationSettings namespace’ini eklememiz gerekiyor.
VB.NET
Imports System.Configuration.ConfigurationSettings
veya
C#.net
using System.Configuration.ConfigurationSettings;
Bazen Döviz Bilgileri, Maçsonuçları gibi başka bir sitenin içeriğini almanız gerekebilir. Bunun için C# da aşağıdaki meddu kullanabilirsiniz:
public static string icerikAl(string url)
{
WebRequest wReq = WebRequest.Create(url);
wReq.Timeout = 10000; // zaman aşımı süresi
WebResponse wRes = wReq.GetResponse();
Encoding enc = Encoding.GetEncoding("iso-8859-9");
StreamReader sRed = new StreamReader(wRes.GetResponseStream(), enc);
return sRed.ReadToEnd();
}
lt01.text = icerikAl("http://www.goals365.com/feed/ soccer/index.php");
Asp.net ‘de datagridview kullandığımız zaman sayfalamayı .NET kendisi yapıyor ama listenizi kendiniz oluşturuyorsanız o zaman problemler çıkabiliyor.
Aşağıdaki metoda toplam sayfa sayısını,ekrandaki sayfayı ve gideceğimiz linkin ön ekini göndererek şu şekilde sayfalama oluşturabiliriz.
private static string sayfalamaYap(int ts, int es, string yol)
{//ts=toplam sayfa, es=ekrandaki sayfa, yol = link
int eis = 0;
int ess = 0;
bool i2demi = (es – 6 < 1) ? true : false; //ilk 2 sayfadan birindeysek true–not:-2 idi
bool s2demi = (ts – 6 < es) ? true : false; //son 2 sayfadan birindeysek true
bool imi = (es == 1) ? true : false; //ilk sayfa isek true
bool smu = (es == ts) ? true : false; //son sayfa isek true
string text = “<div id=\”paging\”>”;
string buton = “<a href=\”/” + yol + “{0}\” class=\”{2}\”>{1}</a>”;
if (i2demi & s2demi) { eis = 1; ess = ts; }
else if (!i2demi & s2demi) { eis = ts – 8; ess = ts; }
else if (i2demi & !s2demi) { eis = 1; ess = 8; }
else { eis = es – 4; ess = es + 4; }
if (!imi) { text += string.Format(buton, (es – 1).ToString(), “< previus”, “nav”); }
if (!i2demi) { text += string.Format(buton, “1”, “1”, “nav”) + string.Format(buton, “2”, “2”, “nav”) + ” … “; }
for (int i = eis; i <= ess; i++)
{
if (i == es) { text += “<span href=\”\” class=\”navnone\”>” + i.ToString() + “</span>”; }
else { text += string.Format(buton, i.ToString(), i.ToString(), “nav”); }
}
if (!s2demi) { text += ” … “ + string.Format(buton, (ts – 1).ToString(), (ts – 1).ToString(), “nav”) + string.Format(buton, ts.ToString(), ts.ToString(), “nav”); }
if (!smu) { text += string.Format(buton, (es + 1).ToString(), “next >”, “nav”); }
return text + “</div>”;
}
.NET projenizin bulunduğu konumla ilgili güvenlik sorunu olduğu zaman ekranınızda, “The project location is not fully trusted by the .NET runtime” uyarısı alırsınız çözümü;
Denetim masası > Yönetimsel Araçlar > .NET Configuration X.xx
(projenizin kullandığı framework versiyonuna göre) sonra
Runtime Security Policy > Machine > All Code > Add a Child Code Group a tıklayın.