you have two choices.. validate at client side or at server side.
1) from server side
private bool IsImage(byte[] data)
{
string myStr = System.Text.Encoding.ASCII.GetString(data).Substring(0,16);
if(myStr.Substring(8,2).ToString().ToLower()!="if")
{
if(myStr.Substring(0,3).ToString().ToLower() != "gif")
{
if(myStr.Substring(0,2).ToString().ToLower() != "bm")
{
if(myStr.Substring(0,2).ToString().ToLower() != "ii")
{
this.myFile.PostedFile.InputStream.Close();
myStr = null;
return false;
}
}
}
}
myStr = null;
return true;
}
2) from client side (Java Script)
<script language="javascript">
function ValidateFile(source, args)
{
try
{
var fileAndPath=
document.getElementById(source.controltovalidate).value;
var lastPathDelimiter=fileAndPath.lastIndexOf("\\");
var fileNameOnly=fileAndPath.substring(lastPathDelimiter+1);
var file_extDelimiter=fileNameOnly.lastIndexOf(".");
var file_ext=fileNameOnly.substring(file_extDelimiter+1).toLowerCase();
if(file_ext!="jpg")
{
args.IsValid = false;
if(file_ext!="gif")
args.IsValid = false;
if(file_ext!="png")
{
args.IsValid = false;
return;
}
}
}catch(err)
{
txt="There was an error on this page.\n\n";
txt+="Error description: " + err.description + "\n\n";
txt+="Click OK to continue.\n\n";
txt+=document.getElementById(source.controltovalidate).value;
alert(txt);
}
args.IsValid = true;
}
</script>
<asp:fileupload id="FileUpload1" runat="server" xmlns:asp="#unknown" />
<asp:customvalidator id="CustomValidator1" xmlns:asp="#unknown">
ClientValidationFunction="ValidateFile" runat="server"
ControlToValidate="FileUpload1"
Display="dynamic" ErrorMessage="images only ">
mark as answer if solves your problem