Glengamoi · AspHeute (Artikel) · .NET Heute (RSS-Suche) · .NET Blogs · Glengamoi Suche (Installieren via Klick)

Glengamoi

Die Diskussionsforen der deutschen .NET Community
Willkommen bei Glengamoi. Anmeldung | Registrieren | Hilfe
in Suchen

MS AJAX - Daten async an den Server senden

Letzter Beitrag 01-11-2007 9:38 von Chris Cluss. 23 Antworten.
Seite 2 von 2 (24 Treffer) < Zurück 1 2
Beiträge sortieren: Zurück Weiter
  • 01-05-2007 12:53 Antwort zu

    AW: MS AJAX - Daten async an den Server senden

    Was Du willst geht nicht!

    Ich verstehe Dich so:

    Du willst beim ersten Aufruf des Users auf der Site in Deiner Page Informationen auswerten, die per Javascript zum Server gesendet werden.

    Das geht aber nicht, da der Server ja erst mal einen HTML-Code zum Client liefern muß, bevor der Client javascript ausführen kann.

    Was Du machen kannst ist automatisch die Seite per Javascript neu laden wenn die Sessionwerte nicht gesetzt sind.

    Also in Deiner pickupBrowser.aspx folgende Zeile hinzufügen:
    if Session("screenWidth") = nothing then response.write("window.navigate('deinePAge.aspx')")

    VB.NET Code kann man übersetzen unter z.B.: http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx

    • IP-Adresse ist Registriert
  • 01-10-2007 8:56 Antwort zu

    AW: MS AJAX - Daten async an den Server senden

    Hallo!

    ich bekomm das irgendwie nicht ;-(

     Ich habe eine Masterpage (dort ist auch der Scriptmanager) und einen ContentPage.

     Auf der Contentpage ist im Codebehind folgende Function:

    <System.Web.Services.WebMethod(), System.Web.Script.Services.ScriptMethod()> _
    Public Shared Function WeekDayUpdate() As String
     
    Return "x"
    End Function

    In der aspx Seite hab ich dann einen Button der die JS Funktion 

    function ChangeWeekDayState(TrueUrl, FalseUrl, SubmitMethode)
    {
    window.alert(
    'change it!');
    Sys.Net.PageMethods.WeekDayUpdate(OnChangeWeekDayStateComplete);
    }

    function OnChangeWeekDayStateComplete(res)
    {
    window.alert(
    'res');
    window.alert(res);
    }

    Es wird die Meldung "change it" ausgegeben und dann die Fehlermeldung Sys.Net.PageMethods ist nicht definiert. ;-(

    Ideen? Brauch ich eventuell einen ScriptManagerProxy auf der Contentpage?
    Abgelegt unter:
    • IP-Adresse ist Registriert
  • 01-10-2007 9:43 Antwort zu

    AW: MS AJAX - Daten async an den Server senden

    Hier gibts ein Sample: http://glengamoi.com/forums/permalink/14978/15017/ShowThread.aspx#15017

    - Wie sieht Dein Scriptmanager in der Masterpage aus?
    - ist Dein Web im Root oder im Unterverzeichnis?


     

    • IP-Adresse ist Registriert
  • 01-10-2007 10:09 Antwort zu

    AW: MS AJAX - Daten async an den Server senden

    Hallo!

    Danke für die Antwort! Ich habs vor 3 Minuten selbst hinbekommen. Ich hab in der Webconfig die Einträge

    <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
    <
    sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
    <
    section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false"/>
    <
    sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
    <
    section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
    <
    section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
    <
    section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" />
    </
    sectionGroup>
    </
    sectionGroup>
    </sectionGroup>

    nicht gehabt. Jetzt gehts wunderbar. Hat mich gestern den ganzen Abend und heute früh ein paar Stunden gekostet. Ich hasse so Kleinigkeiten.

    Allerdings hab ich nun noch ein neues Problem mit "mehr" Parameter.

    zB

    <System.Web.Services.WebMethod(), System.Web.Script.Services.ScriptMethod()> _
    Public
    Shared Function WeekDayUpdate(ByVal SiteSchedulingID As Long, ByVal AffectedDay As String, ByVal NewState As String) As Boolean
    End Function

    mit Aufruf:

    PageMethods.WeekDayUpdate(SiteSchedulingID, AffectedDay, NewState, OnChangeWeekDayStateComplete, OnChangeWeekDayStateError);

    Ist doch normal so gedacht oder? Ich muss leider 3 Paramter übergeben ;-( Jetzt bekomm ich die Fehlermeldung
     Sys.ArgumentTypeException: Object of Type 'String' cannot be converted to type 'Function'

    Mit nur einem Parameter funktionierts perfekt.

    • IP-Adresse ist Registriert
  • 01-10-2007 17:37 Antwort zu

    AW: MS AJAX - Daten async an den Server senden

    der letzte parameter ist immer die Javascript-Funktion, die aufgerufen wird wenn der callback abgeschlossen ist.

    Ich habe eine Funktion mit 8 Parametern... geht also!

    • IP-Adresse ist Registriert
  • 01-10-2007 17:45 Antwort zu

    Re: AW: MS AJAX - Daten async an den Server senden

    Hallo Chris Cluss,

    > der letzte parameter ist immer die Javascript-Funktion, die aufgerufen wird wenn der callback abgeschlossen ist.

    Nicht ganz korrekt, können noch ein paar Parameter mehr dran.

    Namespace.ClassName.MethodName(, onSuccess, onFailure,
    userContext);

    Paramter der aufzurufenden Methode. Anzahl muss exakt
    stimmen, bei überladenen Methoden kommt es sicherlich zu Problemen, da
    keine richtige Typprüfung gewährleistet ist.

    onSucces = Callback bei Erfolg

    Signatur des Callbacks: function(result, userContext, methodName);


    onFailure= Callback bei einem Fehler

    Signatur des Callbacks: function(error, userContext, methodName);

    userContext = Wert oder Objekt welcher den Callbacks übergeben wird
    methodName = Name der Method die aufgerufen wird.

    Grüße

    Albert
    http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
    • IP-Adresse ist Nicht registriert
  • 01-10-2007 22:09 Antwort zu

    AW: Re: AW: MS AJAX - Daten async an den Server senden

    Danke für die Anworten. Könnte einer von euch beiden ein (ganz kurzes) Beispiel reinwerfen damit ich mir das mal durchsehen kann? (Irgendetwas mit mehr als einen Paramter ...)

     Danke!

    • IP-Adresse ist Registriert
  • 01-10-2007 22:29 Antwort zu

    Re: AW: Re: AW: MS AJAX - Daten async an den Server senden

    Hallo Bernhard Grojer,

    > Danke für die Anworten. Könnte einer von euch beiden ein (ganz kurzes) Beispiel reinwerfen damit ich mir das mal durchsehen kann? (Irgendetwas mit mehr als einen Paramter ...)
    > Danke!

    Hier aus einem Beispiel aus dem Vortrag den ich gestern gehalten habe.

    Das JavaScript

    function DoUser()
    {
    PageMethods.GetUser("Weinert", "Albert", DoUser_CB, OnFailed);
    }

    function DoUser_CB(result)
    {
    var s = String.format("Nachname: {0}, Vorname: {1}",
    result.Name, result.FirstName);
    alert(s);
    }


    function OnFailed(error, userContext, methodName)
    {
    var s = String.format("message = {0}\nstatusCode={1}",
    error.get_message(), error.get_statusCode());
    alert(s);
    }


    Hier das Code Behind

    public partial class PageMethod : Page
    {
    [WebMethod]
    public static TestUser GetUser(string name, string firstName)
    {
    TestUser testUser = new TestUser();
    testUser.FirstName = firstName;
    testUser.Name = name;
    return testUser;
    }

    }


    Die TestUser Klasse

    public class TestUser
    {

    private string _name;

    public string Name
    {
    get { return _name; }
    set { _name = value; }
    }
    private string _firstName;

    public string FirstName
    {
    get { return _firstName; }
    set { _firstName = value; }
    }
    private int _userId;

    public int UserId
    {
    get { return _userId; }
    set { _userId = value; }
    }
    }
    http://www.afterlaunch.de Die Community Konferenz nach dem Launch von Visual Studio 2008
    • IP-Adresse ist Nicht registriert
  • 01-11-2007 9:38 Antwort zu

    AW: Re: AW: MS AJAX - Daten async an den Server senden

    Hallo Albert,

    gut zu wissen... onFailure habe ich schon vermisst.

    Gruß, Chris

    • IP-Adresse ist Registriert
Seite 2 von 2 (24 Treffer) < Zurück 1 2