Click here to Skip to main content
15,901,001 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
XML
System.Web.HttpContext.Current.Response.Write("<script>alert('Item Already Exists')</script>");


in asp.net c# i am using this or showung messagebox but its giving a exception that is
Object reference not set to an instance of an object.

I also used

ScriptManager.RegisterClientScriptBlock(this,this.GetType(), "alert", "alert('Your Message');", true);

but i think its requried control event because of this.GetType() and i am not using control for this it is a simple user defined function in which I want to show messagebox,
plz tell me where i did make mistek. thank you.
Posted
Updated 30-Aug-15 3:23am
v2
Comments
Abhipal Singh 30-Aug-15 9:31am    
System.Web.HttpContext.Current.Response
one of the object in the above statement is null because of which you are getting the error. Debug and see which one is null.
Member 11922776 30-Aug-15 9:53am    
means is there need to write script at page.aspx soure code? or <script>alert('Item Already Exists')</script> this is enough. because i did not written at source file.
F-ES Sitecore 30-Aug-15 10:36am    
Your code works for me so there is something about the context you're not telling us.

Also just so you know, the code isn't showing a messagebox from server code, it is generating javascript that will show a message when the page has finished rendering, so you can't use this as a "click to continue" thing.
Can you debug and see where exactly you saw this exception?
Member 11922776 31-Aug-15 0:29am    
Keyword 'this' is not valid in a static property, static method, or static field initializer this error is fired when execute this line ScriptManager.RegisterClientScriptBlock(this,this.GetType(), "alert", "alert('Your Message');", true);

and about below line

System.Web.HttpContext.Current.Response.Write("<script>alert('Item Already Exists')</script>");

i did not use any variable. what is alert('Item Already Exists') is alert is user define fuction and must be define esle where?

and at this line exception is at:

System.Web.HttpContext.Current <= at this point its show null.

thanx for u r value able time.

You did not show where the exception with the message "Object reference not set to an instance of an object" is thrown.

Not to worry. This is one of the very easiest cases to detect and fix. It simply means that some member/variable of some reference type is dereferenced by using and of its instance (non-static) members, which requires this member/variable to be non-null, but in fact it appears to be null. Simply execute it under debugger, it will stop the execution where the exception is thrown. Put a break point on that line, restart the application and come to this point again. Evaluate all references involved in next line and see which one is null while it needs to be not null. After you figure this out, fix the code: either make sure the member/variable is properly initialized to a non-null reference, or check it for null and, in case of null, do something else.

Please see also: want to display next record on button click. but got an error in if condition of next record function "object reference not set to an instance of an object".

Sometimes, you cannot do it under debugger, by one or another reason. One really nasty case is when the problem is only manifested if software is built when debug information is not available. In this case, you have to use the harder way. First, you need to make sure that you never block propagation of exceptions by handling them silently (this is a crime of developers against themselves, yet very usual). The you need to catch absolutely all exceptions on the very top stack frame of each thread. You can do it if you handle the exceptions of the type System.Exception. In the handler, you need to log all the exception information, especially the System.Exception.StackTrace:
http://msdn.microsoft.com/en-us/library/system.exception.aspx,
http://msdn.microsoft.com/en-us/library/system.exception.stacktrace.aspx.

The stack trace is just a string showing the full path of exception propagation from the throw statement to the handler. By reading it, you can always find ends. For logging, it's the best (in most cases) to use the class System.Diagnostics.EventLog:
http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlog.aspx.

Good luck,
—SA
 
Share this answer
 
Comments
Member 11922776 31-Aug-15 0:12am    
Keyword 'this' is not valid in a static property, static method, or static field initializer this error is fired when execute this line ScriptManager.RegisterClientScriptBlock(this,this.GetType(), "alert", "alert('Your Message');", true);

and about below line

System.Web.HttpContext.Current.Response.Write("<script>alert('Item Already Exists')</script>");

i did not use any variable. what is alert('Item Already Exists') is alert is user define fuction and must be define esle where?

and at this line exception is at:

System.Web.HttpContext.Current <= at this point its show null.

thanx for u r value able time.
Sergey Alexandrovich Kryukov 31-Aug-15 10:04am    
This is not related to your original question, "'this' is not valid" is not an exception message, but a compilation error telling you that you have no clue of OOP and should learn the basics first, first of all, types and objects (instances). If you don't understand this message, nothing can be explained to you before you take programming course and learn it all from scratch.
Please do.
—SA
Quote:
yes inside a Web Method
public static void QueryFunModbusRTU()
That is the reason why it is coming.

Do one thing. Don't do like this to show an alert. WebMethods are designed to take some paramter and return you something after some operation. So, after all your operation, just return a value or something. Then in client side Ajax success, read that value and show an alert. This is idea and perfect way.
 
Share this answer
 
Comments
Member 11922776 31-Aug-15 1:06am    
sorry i m not getting, may you post the code plz. thanx
I am saying that don't put that code inside the web method. You might have a Ajax call to call this web method. So inside the ajax success event, show the alert. As simple as that.
Member 11922776 31-Aug-15 1:19am    
please tell me how to do that.
and Ajax call?
Member 11922776 31-Aug-15 1:35am    
i find it. but i did't want to use any event like clink. I want to show message through web-methode only. is there any other way to do this?
That is a wrong approach. You can;t do that. As I said, the simplest way is to do it inside ajax success event.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900