|
Hi thx for ur quick reply.
but i am still a newbie,Sample code can help me in resolving a problem
Waiting for reply
|
|
|
|
|
You can do it just simple way . Create a Default page that will display the Unauthorized User message. When you click on the link to open the page that time just simple check the roll of user, if the roles permit to access that page , navigate to that page other wise redirect to unauthorized access page. On unauthorized access page give a link to user back to the home page.
<code>OnAdminLinkClicked()
{
if(Session["CurrentUserRole"].equals("Admin"))
{
Response.redirect("Admin.aspx");
}
else
{
Response.Redirect("Unauthorized.aspx)
}
}</code>
Note: Given code is just a dummy example, not compiled and checked !!!
cheers,
Abhijit
|
|
|
|
|
thx for the reply
Well there may be more than 100+ users and more than 100+ access right and which are defined at the group level and some special at personal level..
Is it going to be optimistic solution for my problem..
Any custom methods which can be used across all the pages on the website.
Also please give a solution for menu security w/o using role based security provided by asp.net
|
|
|
|
|
Hi all,
I need to generate menubar ..
The menu bar must generate the menus based on user privileges stored in the database..
Please Help its urgent
|
|
|
|
|
Hi all,
Is there any way to check whether Email exists not syntax wise.For eg:aaaaaaaaaaa@bbbbb.com. though it has valid syntax it doesn't exist in real.How to check this using asp.net code.Please help me.
Thanks.
|
|
|
|
|
No, there isn't, not short of sending an email and seeing if it bounces, but that's not 100%, and it's user intrusive.
Christian Graus
Driven to the arms of OSX by Vista.
|
|
|
|
|
There is no 100% guranteed way but you can check mx records. Try the following code it may give an idea.
public class MailValidator
{
private bool mResult = false;
public bool Result
{
get { return mResult; }
set { mResult = value; }
}
private string mError = "";
public string Error
{
get { return mError; }
set { mError = value; }
}
private string mMailAddress = "";
public string MailAddress
{
get { return mMailAddress; }
set { mMailAddress = value; }
}
public MailValidator(string mailAddress)
{
mMailAddress = mailAddress;
}
public bool MailExists()
{
string domainName = mMailAddress.Substring(mMailAddress.IndexOf("@") + 1);
foreach (string str in Mx.GetMXRecords(domainName))
{
TcpClient insTcpClient=null;
try
{
//MessageBox.Show(str);
insTcpClient = new TcpClient(str, 25);
NetworkStream ns = insTcpClient.GetStream();
byte[] recievedMessage = new byte[insTcpClient.ReceiveBufferSize];
ns.Read(recievedMessage, 0, insTcpClient.ReceiveBufferSize);
//MessageBox.Show(Encoding.ASCII.GetString(recievedMessage));
string messageToSend = "HELO\r\n";
byte[] buffer = System.Text.Encoding.GetEncoding(1254).GetBytes(messageToSend);
ns.Write(buffer, 0, buffer.Length);
recievedMessage = new byte[insTcpClient.ReceiveBufferSize];
ns.Read(recievedMessage, 0, insTcpClient.ReceiveBufferSize);
//MessageBox.Show(Encoding.ASCII.GetString(recievedMessage));
messageToSend = "MAIL FROM:<deneme@" + domainName + ">\r\n";
buffer = System.Text.Encoding.GetEncoding(1254).GetBytes(messageToSend);
ns.Write(buffer, 0, buffer.Length);
recievedMessage = new byte[insTcpClient.ReceiveBufferSize];
ns.Read(recievedMessage, 0, insTcpClient.ReceiveBufferSize);
//MessageBox.Show(Encoding.ASCII.GetString(recievedMessage));
messageToSend = "RCPT TO:<" + mMailAddress + ">\r\n";
buffer = System.Text.Encoding.GetEncoding(1254).GetBytes(messageToSend);
ns.Write(buffer, 0, buffer.Length);
recievedMessage = new byte[insTcpClient.ReceiveBufferSize];
ns.Read(recievedMessage, 0, insTcpClient.ReceiveBufferSize);
//MessageBox.Show(Encoding.ASCII.GetString(recievedMessage));
if (Encoding.ASCII.GetString(recievedMessage).StartsWith("250"))
{
mResult = true;
}
insTcpClient.GetStream().Close();
insTcpClient.Close();
}
catch (Exception ex)
{
mError += str + ": " + ex.Message; ;
}
}
return mResult;
}
}
public class Mx
{
public Mx()
{
}
[DllImport("dnsapi", EntryPoint = "DnsQuery_W", CharSet = CharSet.Unicode, SetLastError = true, ExactSpelling = true)]
private static extern int DnsQuery([MarshalAs(UnmanagedType.VBByRefStr)]ref string pszName, QueryTypes wType, QueryOptions options, int aipServers, ref IntPtr ppQueryResults, int pReserved);
[DllImport("dnsapi", CharSet = CharSet.Auto, SetLastError = true)]
private static extern void DnsRecordListFree(IntPtr pRecordList, int FreeType);
public static string[] GetMXRecords(string domain)
{
IntPtr ptr1 = IntPtr.Zero;
IntPtr ptr2 = IntPtr.Zero;
MXRecord recMx;
if (Environment.OSVersion.Platform != PlatformID.Win32NT)
{
throw new NotSupportedException();
}
ArrayList list1 = new ArrayList();
int num1 = Mx.DnsQuery(ref domain, QueryTypes.DNS_TYPE_MX, QueryOptions.DNS_QUERY_BYPASS_CACHE, 0, ref ptr1, 0);
if (num1 != 0)
{
throw new Win32Exception(num1);
}
for (ptr2 = ptr1; !ptr2.Equals(IntPtr.Zero); ptr2 = recMx.pNext)
{
recMx = (MXRecord)Marshal.PtrToStructure(ptr2, typeof(MXRecord));
if (recMx.wType == 15)
{
string text1 = Marshal.PtrToStringAuto(recMx.pNameExchange);
list1.Add(text1);
}
}
Mx.DnsRecordListFree(ptr2, 0);
return (string[])list1.ToArray(typeof(string));
}
private enum QueryOptions
{
DNS_QUERY_ACCEPT_TRUNCATED_RESPONSE = 1,
DNS_QUERY_BYPASS_CACHE = 8,
DNS_QUERY_DONT_RESET_TTL_VALUES = 0x100000,
DNS_QUERY_NO_HOSTS_FILE = 0x40,
DNS_QUERY_NO_LOCAL_NAME = 0x20,
DNS_QUERY_NO_NETBT = 0x80,
DNS_QUERY_NO_RECURSION = 4,
DNS_QUERY_NO_WIRE_QUERY = 0x10,
DNS_QUERY_RESERVED = -16777216,
DNS_QUERY_RETURN_MESSAGE = 0x200,
DNS_QUERY_STANDARD = 0,
DNS_QUERY_TREAT_AS_FQDN = 0x1000,
DNS_QUERY_USE_TCP_ONLY = 2,
DNS_QUERY_WIRE_ONLY = 0x100
}
private enum QueryTypes
{
DNS_TYPE_MX = 15
}
[StructLayout(LayoutKind.Sequential)]
private struct MXRecord
{
public IntPtr pNext;
public string pName;
public short wType;
public short wDataLength;
public int flags;
public int dwTtl;
public int dwReserved;
public IntPtr pNameExchange;
public short wPreference;
public short Pad;
}
}
|
|
|
|
|
Check this site out ...
http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=22[^]
I played around with it and it seemed to work very well. I don't know how they validate the email address, but it seems to work.
I've also played around with their stock-quote webservice, which works very nicely.
Give it a shot.
|
|
|
|
|
Hi all!
I am creating a grid view control containing data and column coming from two different sources .
1)first two columns in grid control coming from 1 source with all the data like field_name1 and field_name2.
2) second having the 1 column(Table Field) in the table which is display as columns header text in the grid view control combin with the above grid view.
Now the problem.
All the time the 2) is appear first i want to show him in 2nd priority.
1) shoud be display first.
below is the code for that
<br />
if (chkHealthPlanDP.Checked)<br />
{<br />
System.Web.UI.WebControls.GridView DiseaseGrid = new GridView();<br />
<br />
DiseaseGrid.DataSource = REPORT_METRIC_ENTITYMIX.GetData(2);
DiseaseGrid.DataBind(); <br />
DiseaseGrid.Width = 100;<br />
DiseaseGrid.Height = 50;<br />
DiseaseGrid.GridLines = GridLines.Both;<br />
DiseaseGrid.CellPadding = 0;<br />
DiseaseGrid.HeaderStyle.BackColor = System.Drawing.Color.Pink; <br />
<br />
foreach (Master_ref_disease masterDisease in Master_reference_disease.result()
{<br />
BoundField c = new BoundField();<br />
c.HeaderText = masterDisease.D_ID;<br />
DiseaseGrid.Columns.Add(c); <br />
}<br />
PlaceHolder1.Controls.Add(DiseaseGrid);<br />
DiseaseGrid.DataBind(); <br />
}<br />
|
|
|
|
|
Why not take a Child Grid for showing records of dataSource 2
|
|
|
|
|
I have created a web application. It is running fine if i gives http://localhost/web1/default.aspx; but if i check through http://192.168.0.12/web1/default.aspx; it is returning me error
You are not authorized to view this page
HTTP 401.3 - Access denied by ACL on resource.
192.168.0.12 is the IP address of my web server.
Please let me know how to resolve the issue.
Thanks & Regards
Girish Sharma
|
|
|
|
|
Girish481 wrote: i check through http:///web/default.aspx
why you use this?If you want ot remove the locaklhost then you have to give the IP instead of locahost.
Cheers!!
Brij
|
|
|
|
|
Because i wish that this should be accessible through another machine.
|
|
|
|
|
whether you have deployed it on IIS or not? if yes, check it from there only,then check whether its working?and one more thing, Enable anonymous access.
Cheers!!
Brij
|
|
|
|
|
IIS is running fine and Anonymous access check box is selected.
|
|
|
|
|
try with machinename istead of IP.
Cheers!!
Brij
|
|
|
|
|
Girish481 wrote: have created a web application. It is running fine if i gives http://localhost/web1/default.aspx;
Great !!!
Girish481 wrote: but if i check through http:///web/default.aspx; it is returning me error
Ohhh God !!! Man what are you trying ? You are trying to access web sites with out server name !!! You are .....
cheers,
Abhijit
|
|
|
|
|
Probably it was typo, when i posted the question. I am giving IP address to run the web application and it is giving me error; but if i gives localhost; it is running fine.
|
|
|
|
|
Girish481 wrote: Probably it was typo,
, But its makes a huge differents
Girish481 wrote: am giving IP address to run the web application and it is giving me error; but if i gives localhost; it is running fine.
I think host name resolution is not working properly. Please check Host name and IP address configuration . It will work !!!
cheers,
Abhijit
|
|
|
|
|
ok. Can you please tell me how to check that host name resolution is not working properly. My hostname is "girish" and ip address is 192.168.0.12 which is running fine IIS.
Regards
Girish
|
|
|
|
|
Ohh Girish, before that try this one first
Check it[^]
cheers,
Abhijit
|
|
|
|
|
Abhijit,
Thanks for your the link. Before posting the question, i read the link and c:\inetpub\wwwroot\web1 right click--sharing and security--security--and i have checked that Internet Guest Account(GIRISH\IUSER_GIRISH) is already there and now i have given full control to it. But still it is returning the same error.
Regards
Girish
|
|
|
|
|
Its seams some file access issue. I have just googled and got this two link have a look
Ref1[^]
Ref2[^]
Please let me know the final status !!
cheers,
Abhijit
|
|
|
|
|
In short..... it is not working anymore. I have given full control access to IUSER_GIRISH of c:\inetpub\wwwroot\web1 folder.
|
|
|
|
|
Girish481 wrote: In short..... it is not working anymore.
What is there in your first page ? Did you create application pool ?
cheers,
Abhijit
|
|
|
|