Wie in der XML-Datei einen größeren Datentyp als int benutzen?



  • Ich habe ein C#-Projekt, das eine app.config besitzt. Dort muss ich die Werte maxBufferSize und maxReceivedMessageSize auf den größt möglichen Wert setzen. Wenn ich ihn auf mehr als 2147483647 setze, gibts ne Fehlermeldung a la "zu groß für int...".
    Wie kann ich in dem xml sagen, dass ich z.B. long benutzen möchte?

    So sieht die app.config aus:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <system.serviceModel>
            <bindings>
                <basicHttpBinding>
                    <binding name="testserviceBinding" closeTimeout="00:01:00" openTimeout="00:01:00"
                        receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"
                        bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                        maxBufferSize="2147483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647" 
                        messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                        useDefaultWebProxy="true">
                        <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                            maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                        <security mode="None">
                            <transport clientCredentialType="None" proxyCredentialType="None"
                                realm="" />
                            <message clientCredentialType="UserName" algorithmSuite="Default" />
                        </security>
                    </binding>
                </basicHttpBinding>
            </bindings>
            <client>
                <endpoint address="http://www.meinewebsite.de/index.php?soap=test"
                    binding="basicHttpBinding" bindingConfiguration="testserviceBinding"
                    contract="ServiceReference1.testservicePortType" name="testservicePort" />
            </client>
        </system.serviceModel>
    </configuration>
    


  • keine ahnung von C#, aber schreib halt gleich nen String rein. XML is ja so nur Text. Den String kannst du ja dann später in long konvertieren



  • doofe frage: maxReceivedMessageSize="2147483647" ist doch ein string. steht doch in anführungsstrichen 🙄

    im ernst. wo ist denn definiert, dass es ein Int ist?

    Ich hol die Daten nicht bewusst aus der app.config. da holt sich mein projekt standardmäßig daten raus, ohne dass ich etwas programmiert habe. daher kann ich nicht einfach irgendwas konvertieren.

    ich muss im xml-format schon sagen, dass es long sein soll. aber wie geht das?



  • app.config schrieb:

    ich muss im xml-format schon sagen, dass es long sein soll. aber wie geht das?

    XML ist eine Textdatei. Ein Programm interpretiert die Daten die darin stehen.



  • app.config schrieb:

    im ernst. wo ist denn definiert, dass es ein Int ist?

    Nirgendwo. Der Parser konvertiert den Wert in einen Int.



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Themen rund um den PC in das Forum C# und .NET verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • endline schrieb:

    app.config schrieb:

    im ernst. wo ist denn definiert, dass es ein Int ist?

    Nirgendwo. Der Parser konvertiert den Wert in einen Int.

    Stimmt so net, siehe hier. Der Typ ist festgelegt.

    Aber immer diese Crossposts...



  • endline schrieb:

    app.config schrieb:

    im ernst. wo ist denn definiert, dass es ein Int ist?

    Nirgendwo. Der Parser konvertiert den Wert in einen Int.

    Schonmal was von einem Xml Schema gehört? Da werden auch die datentypen von Felder festgelegt (string, int, datum, was auch immer)



  • loks schrieb:

    endline schrieb:

    app.config schrieb:

    im ernst. wo ist denn definiert, dass es ein Int ist?

    Nirgendwo. Der Parser konvertiert den Wert in einen Int.

    Schonmal was von einem Xml Schema gehört? Da werden auch die datentypen von Felder festgelegt (string, int, datum, was auch immer)

    Es sieht nicht so aus, als ob dort irgendein Datentype festgelegt wird. Es ist also wahrscheinlich, dass es sich um ein Eigenformat handelt.



  • Argh, wenn auch nur einer mal den Link folgen würde...

    Der Datentyp wird nicht durch irgend ein Schema festgelegt, und auch ist es keine willkür oder ähnliches. Die Daten werden auf ne konkrete Klasse gemappt und die Properties wo er nen long Wert setzen will, sind nunmal nur als Int definiert, und deshalb krachts.


Anmelden zum Antworten