Server Call - Back Specific Client When Something Happens?
Jun 10, 2010
I have a VB.NET ASP.NET webserver program running. One or more VB.NET clients are making use of it. Nothing special so far. As far as I know, the server is not really aware of the clients. Clients can request data. But is it also possible to let the server call-back a specific client when something happens? So that the client doesn't need to poll?
To be more specific, this server is connected with hardware modules. Clients could be terminals that show the status of a sensor for example. When a sensor gives an "alarm" value, it would be nice if the server could pass that alarm towards the clients. Instead of letting the clients to check each X seconds if that alarm is active. Would be a waste of energy, especially because the chance this alarm goes off is almost zero...
I have a simple WCF service that I call server side from code behind via a service reference. It's used for validation and works and was automatically setup by Visual Studio and is using SOAP I think because the binding is wsHttpBinding.
I want to use the same WCF service, but call it client side from jQuery using ajax(). I'm trying to implement it by way of these instructions.
But if I make the changes to get the client side call working, I have to add the decoration below which I think will break what works on the server side and also change the system.serviceModel section in web.config.
ASP.NET Ajax Library provides some client-side events. For instance:
Sys.Application.add_load( function(args) { // handle the end of any asynchronous post-back. Every-time there's // a server round-trip, this method will be called. } );
During the asynchronous post-back I want to retrieve information to the client. This information must be available in some event like the discribed above.
Does the UpdatePanel or the ScriptManager have any server-side way to retrieve data back to client during an asynchronous post-back?
foreach (var issue in data.GetRuleViolation()) { ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage); }
But at the client side I am not able to take the benefit of ValidationSummary as the call is being made by AJAX. What is the right approach on validation.
I'm dynamically binding tables and sub tables using nested listviews. On the client side I have a piece of jQuery that is toggling the visiblity of TRs witin the tables in order to provide a group expand / contract view option.
On postback I'm obviously loosing my class changes that I have applied via jQuery. I'm wondering what the best approach to maintaining these client side class changes is? I've considered creating a hidden input control per table to store the indexes of the visible TRs at the time of expanding them. The intention being to then look for the indexes during postback / rebinding and add the visible classes to each corresponding element.
Is there a better approach or some native method of passing back the client side style / class change to the server during postbacks?
I'm calling a static Page method via javascript that takes between 5s and 10 min. I'd like to give my user the choice to either continue waiting for the request to complete or not, and use window.setTimeout() to check back every 30s.
I've tried both location.href = '/newpage.aspx' or firing a button's click handler (which does similar redirect) to redirect the user prior to completion of the page method, to no avail. I can immediately send user to a simple html page, but a redirect to any aspx page involving server-side appears to block. When the page method finally completes, the redirect does succeed.
Is this:
a browser issue? If all modern browsers support at least 2 concurrent requests per domain, why wouldn't this work?
a framework limitation? a desirable design pattern or even possible? I've checked, and after redirecting to an HTML page, the original request continues processing (db updates, no problem).
How could i call a javascript function in server side. I have to call the javascript function on the click of a linkbutton which inside a repeater control.
I am using VS2010 and .NET4 for a web app. I have a script manager/update panel that has a couple of grids.
The client just leaves the page opens and views an updated grid every 30 seconds or so.
I want to refresh the grid by calling the server side method to load the grid, but not load the whol page using meta refresh or similar (too much screen flicker and unnecessary bandwith).
Is it possible to set some timer using javascript or something and call a specific server method to refresh controls?
I have a web page having asp.net button control and textbox. I want a confirm message box, when someone changes the content of textbox and click on button. If user click on yes then event of button should fire other wise nothing should happen. All I want is to implement AJAX call back, but it is not working with ASP.NET button control.
I have an ASP.NET MVC App. The forrm has a "button control declared like this "<button name="" text="">I handle this in the post back in the controller. Though it works fine in development machine in IE, it DOE NOT work when i deploy to prod box. I tested it in Firefox and it works just fine
I have a web program that creates a url for a file, where it usually calls
item.Url=downfile+"?fileid="+reader["id"];
which save the item url. Which is called up again when trying to access the file (tho only for half a second)
websiteURL/DownFile.Aspx?fileid=8 what I want to do is to make this not so easily changeable. Now I still need the ID from the database to call that specific file. is there anyway I could do this? or is the best option making my ID field a hash and basically unreadable thus making it hard for anyone to guess the fileid. I have tried reading some Encrypt QueryString documents but they don't seem to be what I am looking for, as the url is saved to the item before any QueryString is called.
I have a gridview with paging. So for instance, I'm on say the page number 10, and I open the form details on a specific record_id (link). After I update/submit the form, it returns to page number 10. But, if I go to another page, for instance page 5, and submit the form, it returns to page 10.
I've tried some things, for instance history.back(), but it returns to the first page I went to, in this case page number 10 (or whatever the first page I go to).
I Getting A Problem In DataGrid's ItemDataBound Event. I Am Calling A JavaScript Function In DataGrid's ItemDataBound Which Retrun The CellIndex And RowIndex Number On Which UserClick After That I Am Re-Binding The DataGrid With jQuery Function After That ItemDataBound Event Not Working. I Want To Call The Same Function Again. Is Their Any Method To Call A Server-Side Function On ItemDataBound Event Except Client-Side Function..
What is Web services? What is Web services? How can I Transfer the data from server to client and client to server using XML. Need one simple Example program(C# web Application) ...
I am using ASP MVC 2 RC2 and playing with client side validation. my problem is that i have a form which has a checkbox and text box.
the textbox should be validated only if the checkbox is checked. I was nto able to find anyway to disable the client side validation when the checkbox is not checked.
If you visit this [URL] and then click on the link like the image below you'll see in-line pop-up DIV which displays a busy status of Ajax callback before it displays the information. So, the information is not there yet until you click on the link.
I got a strange issue after hosting the my site in IIS 7.5, Windows server 2008 64 bit
The applicaion is created in ASP.Net 2.0
The page with issue has following workflow:
Upload a file from browser (may be very large size ~50 MB)Perform some process (May take very long time: up to 30 minuits)Notifies the client that process is done.During the process client uses something like http://www.codeproject.com/KB/session/Session_Defibrillator.aspx to keep the session alive.
The Issue: The client does not get any response sent by my code after the process is over. It should refresh the page with the response provided by my code. But instead it only shows waiting for... in the status bar.
I have tried this on IE and firefox.
To veryfy the process is over
I have added some trance message in my code to check when the process gets finished.I have also checked the Log from IIS, it also shows that response sent with Code 200.
Please help me solving this issue:
What could be the issue?How can I diagnose and fix this problem?In what cases connection between browser and IIS server gets lost.
I need to save a value to a session variable from a javascript function, and then be able to call this value back from the Session into another javascript function during post back.