Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  ASP.NET C# veebi mäng, väärtuste probleemid. märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 02.01.2013 18:48:43 ASP.NET C# veebi mäng, väärtuste probleemid. vasta tsitaadiga

Tere

Selline kiire küsimus

Ma teen ise siin sellist mängu nagu 21. Ja igakord, kui ma vajutan nuppu, et ta mulle kaardi juurde annaks, eelnev väärtus justkui kaob. Kas nupu vajutusel siis tõesti leht laeb igakord uuesti?
Ja selleks, et neid väärtusi alles hoida, pean tegema andmebaasi ühenduse selleks? :/
tagasi üles
vaata kasutaja infot saada privaatsõnum
Fukiku
Kreisi kasutaja
Fukiku

liitunud: 06.11.2003




sõnum 02.01.2013 19:02:07 vasta tsitaadiga

Kui sa eraldi pole vaeva näinud selle nimel, et AJAX-i abil lehe uuesti laadimist vältida, siis jah - nupu vajutamine (mis tähendab enamasti lehel oleva vormi sisu serverisse saatmist) laeb kogu lehe uuesti. Andmete säilitamiseks pole aga vaja kohe andmebaasi poole vaadata. Üks võimalus on andmeid hoida lehel vormis näiteks hidden tüüpi väljades, siis saad nupuvajutuse peale ka hetke mänguseisu kaasa ning sellega arvestades genereerid uue lehe, kus uus mänguseis kirjas. Teine variant on andmeid hoida serveri poolel sessiooni salvestatuna.

Täpsema abistamise huvides oleks vaja juba ka täpsemalt formuleeritud küsimusi ja ka ilmselt jupikesi tehtud tööst..

_________________
Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist.
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 02.01.2013 19:25:00 vasta tsitaadiga

Sessioonidesse salvestamist peaks täiesti uurima, ei tundu väga raske ka see olevat icon_biggrin.gif
Kuid kas sessioonid töötavad ka siis, kui sa pole mingi otsese kasutajana sisse logitud, et võtab mingi IP või asja järgi?

AJAX'iga ei ole siiani veel tegelenud tõesti, seda asja teen ka siin enamvähem lihtsalt enda huvides ja arengu eesmärkidel icon_wink.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 02.01.2013 19:41:58 vasta tsitaadiga

Oleneb kas sul on vaja lehte laadida või mitte, kui pole, siis kasuta õiget nuppu ja lehte ei laeta ringi.
Form saatmiseks on submit nupp, koodis "Nupp1".
Kui kasutada button tüüpi nuppu, siis formi ei saadeta, koodis "Nupp2".

<form action="http://www.domain.com/" method="post">
<input type="submit" value="Nupp1">
<input type="button" value="Nupp2">
</form>


Selline 21 tüüpi mäng saaks töötada ka kindlasti nii, et polegi vaja lehte igakord uuesti laadida.

tsitaat:
Kuid kas sessioonid töötavad ka siis, kui sa pole mingi otsese kasutajana sisse logitud, et võtab mingi IP või asja järgi?

Jah session töötab iga kasutaja puhul.
Kui sa mõtled, et üle veebi, teise kliendiga paaris mängides, siis teise kasutaja sessioni sa kätte ei saa. Session on ikka ainult ühe arvutiga/browseriga seotud.

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 02.01.2013 19:52:42 vasta tsitaadiga

Sessioonidega sain asja tööle ja hetkel see ainult mõeldud ühe inimese mänguna ka, nii et igati hästi icon_wink.gif

Aga nende nuppudega on mul selline asi, et need näevad mul välja koodis sellised:

<asp:Button ID="UusMangBTN" runat="server" Text="Alusta uut mängu"
        Width="140px" onclick="UusMangBTN_Click" />


Et ma ei saanud ka aru, kas see submit on see, mis ei lae lehte uuesti?

Ma kasutan ASP.NET nuppu, kuigi on ka võimalik võtta sealt HTML alt lihtsalt nuppe:
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 02.01.2013 20:13:01 vasta tsitaadiga

Uuesti ei lae button html koodis, asp pole kindel ei tea.
Ja kui kasutad servers töötlust on sul nii või teisiti vaja serveri poole pöörduda ehk lehte laadida. Kui ütlesin, et saaks teha ka ilma laadimata, siis mõtlesin mingit keelt mis töötab browseris või siis juba eelpool mainitud AJAX lahendus.

Sul ongi jah button pandud, kuid sellel on küljes event onclick="UusMangBTN_Click"
ja see siis pöördubki sul serveri poole, samas võiks see ka browseri siseselt asju toimetada.

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 02.01.2013 20:18:05 vasta tsitaadiga

asp.net nuppude puhul on jah ainult võimalik serveris töötamine :/
Aga eks ma järgmine kord tean, see kõik niigi suht katsetamise asi ainult icon_smile.gif

Aga tänud teie vastuste eest, seda AJAXi teemat ma uurin siin mingiaeg siis icon_smile.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
neros
HV Guru
neros

liitunud: 26.11.2003




sõnum 02.01.2013 20:51:42 vasta tsitaadiga

Soovitan uurida natuke sellist asja nagu ASP.NET MVC4 icon_wink.gif Võin sulle kinnitada, et ASPi seda moodi progedes, nagu sa praegu seda teed, lähed sa varsti lihtsalt hulluks.
_________________
GitHub
.NET Core & Azure baasil lahendused ja arhitektuur - kontakt.
Kommentaarid: 48 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 02.01.2013 21:55:24 vasta tsitaadiga

Mis asi see täpsemalt on? icon_biggrin.gif
Mida see mulle progamisel juurde annab? icon_razz.gif


viimati muutis taurib 03.01.2013 12:48:04, muudetud 2 korda
tagasi üles
vaata kasutaja infot saada privaatsõnum
YberCyrus
HV vaatleja

liitunud: 27.02.2010




sõnum 03.01.2013 09:30:46 vasta tsitaadiga

taurib kirjutas:
Mis asi see täpsemalt on? icon_biggrin.gif
Mida see mulle progamisel juurde annab? icon_razz.gif


Kasutab MVC patternit ehk sa ei pea kasutama Webformse. Kasutad tavalisi HTML elemente või siis HTML helpereid mis genereerivad sulle HTML elemendid. Pole sellist asja nagu code behind vaid on controllerid. Üldiselt lubab MVC sul kasutada separation of concerns printsiipi. ASP.NET MVC on väga liberaalne ja sa ei pea kasutama seda frameworki nii nagu Microsoft kunagi seda ette nägi. Näiteks on seal äärmiselt lihtne rakendada http://en.wikipedia.org/wiki/Single-page_application lähenemist. Eriti kui sa tahad AJAXit näperdama hakata on ASP.NET MVC väga hea valik. Seal on võimalik JSONit tagasi pritsida nii tavalisest controllerist kui ka Web APIst. Viimase puhul muidugi by default ei saa accessida sessioone kuna see läheb vastuollu REST mudelile.
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
neros
HV Guru
neros

liitunud: 26.11.2003




sõnum 03.01.2013 11:25:01 vasta tsitaadiga

Nagu öeldud, ASP.NET MVC puhul on tegemist raamistikuga mis teeb sinu eest terve hunniku tööd ära ning pakub lisaks terve hunniku teeke. Sama lugu on AJAXiga, kui tava (non-ajax) formi jaoks tehakse:

@using(Html.BeginForm())
{
    @Html.HiddenFor(x => x.field)
    @Html.EditorFor(x => x.field2)
    <input type="submit">
}


Kus submitile vajutamine submitib formi ja refreshib lehe,


@using(Ajax.BeginForm())
{
    @Html.HiddenFor(x => x.field)
    @Html.EditorFor(x => x.field2)
    <input type="submit">
}


Üks sõna ühel real ära vahetada ning formi post muutub XMLHTTPRequestiks.
Session state hoidmine ei ole keerulisem kui tavalises ASPis, sul on ikka Session objekt mis on "kasutajapõhine". Pole väga keeruline ka komplitseeritumat sessioonimanageri tekitada, kuna ASP.NET ei ole interpreteeritud keel vaid istub IISi AppPoolis, siis on ta samasugune programm nagu misiganes mis sa .exe lõpuga käima lased ning staatilised objektid on mälus käivitamisest sulgemiseni, mistõttu on võimalik kasutajate vahel sidet luua. Aga see pole MVC põhine featuur vaid .NETi oma üldiselt, lihtsalt mõtlesin vahele pista icon_smile.gif

_________________
GitHub
.NET Core & Azure baasil lahendused ja arhitektuur - kontakt.
Kommentaarid: 48 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum
taurib
HV vaatleja

liitunud: 26.08.2010




sõnum 03.01.2013 16:34:31 vasta tsitaadiga

Hmm, palju uurimist tegema selle teema kallal siis icon_smile.gif

Ma siin ise tasapisi teen ja õpin, ning igasugused soovitused on igati teretulnud, kuidas asjad töötada võiksid icon_wink.gif

Seda MVC asja ma uurin veel ja hetkel plaanis väga kahe arvutivahelist actionit tekitada pole, kuid eks ka see mingiaeg sisse tuua icon_smile.gif

Tänud teile kõigile, kes te siin aitasite ja soovitsite icon_smile.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  ASP.NET C# veebi mäng, väärtuste probleemid.
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.