De Devschuur Coffee Corner Overzicht Volgende deel Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 110 ... 201 Laatste
Acties:
  • 852.155 views

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

m1dnigh7 schreef op maandag 21 februari 2011 @ 09:45:
Hey mensen, ik denk dat ik hier in het goede forumpje zit, in elk geval het veiligste om niets te misplaatsen. Ik wou even vragen waar jullie aan programmeren als het niet voor jullie werk is? Ik ben nl student TI in m'n 2e jaar en ken al heel wat Java en de basis van C# (ASP.NET), en zou graag met iets van proggen bezig zijn buiten school. Heeft iemand hier een handige tip of idee waar ik kan aan beginnen?
Ik programmeer voor m'n werk voornamelijk in C# en Delphi met MSSQL als database, en thuis ben ik meer bezig in PHP en MySQL en sinds kort voor Android (hoewel ik nog niet verder ben gekomen dan de IDE en SDK installeren op een VM en Hello World te draaien in de emulator).

Maar zoek eens op de diverse "Welke programmeertaal moet ik nemen"-topics voor wat input. ;) Het maakt in principe niet uit in welke taal je het doet, maar kies gewoon de juiste taal voor je doel.

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
m1dnigh7 schreef op maandag 21 februari 2011 @ 09:45:
Hey mensen, ik denk dat ik hier in het goede forumpje zit, in elk geval het veiligste om niets te misplaatsen. Ik wou even vragen waar jullie aan programmeren als het niet voor jullie werk is? Ik ben nl student TI in m'n 2e jaar en ken al heel wat Java en de basis van C# (ASP.NET), en zou graag met iets van proggen bezig zijn buiten school. Heeft iemand hier een handige tip of idee waar ik kan aan beginnen?
Bedenk eens wat je wil gaan doen, dan verzin je daarbij welke taal het best bij het project past. Als ik voor mezelf dingen maak is dat meestal Java als het niet windows-specifiek is, of C# als het perse een windows gui app moet zijn.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

Cloud schreef op vrijdag 18 februari 2011 @ 15:12:
Met backgroundworkers werk ik niet zo vaak, maar ik mag hopen dat die ook naar Application_ThreadException gestuurd worden. Wel belangrijk om te weten ;) Zal eens kijken of ik dat kan testen.

Nee, BackgroundWorkers die eten de exceptie op en maken het probleem duidelijk middels het RunWorkerCompleted event.
Goed om weten :)
SoaDmaggot schreef op zondag 20 februari 2011 @ 14:29:
[...]

Elke nacht dat ik wil proberen hoe het ding ligt val ik als een blok in slaap en herinner ik me er de volgende ochtend vrijwel niets van... :z
haha leuk :Y)
alex3305 schreef op zondag 20 februari 2011 @ 14:54:
En wat hebben Ikea boxsprings te maken met code devven :?
quote: Waarschuwing
"Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep, niet als vraagbaak"
dus het moet niet altijd over devven gaan, ik heb een nieuw bed nodig, en vroeg mij af wat nederland ervan dacht.. :7
Cloud schreef op maandag 21 februari 2011 @ 09:25:
Niet zo slick als ik het daar zie staan volgens mij. Al heb ik ze al een tijd niet meer gebruikt in Visual Studio. Moet die van Resharper maar eens gaan bekijken, want dit ziet er wel mooi uit :)
moet je zeker doen! d:)b

ik ga me nu weer even verder verdiepen in EFCodeFirst *O*

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

m1dnigh7 schreef op maandag 21 februari 2011 @ 09:45:
Hey mensen, ik denk dat ik hier in het goede forumpje zit, in elk geval het veiligste om niets te misplaatsen. Ik wou even vragen waar jullie aan programmeren als het niet voor jullie werk is? Ik ben nl student TI in m'n 2e jaar en ken al heel wat Java en de basis van C# (ASP.NET), en zou graag met iets van proggen bezig zijn buiten school. Heeft iemand hier een handige tip of idee waar ik kan aan beginnen?
...vaak programmeer ik aan niets als het niet voor m'n werk is. Als je nog een sociaal leven wilt hebben, af en toe daglicht wil zien, sporten etc blijft er weinig tijd over :P

Mocht er dan toch een paar loze uurtjes overblijven: Android devven is leuk, kan je combineren met bijvoorbeeld game development. Een simpel spelletje in Java op een android device hoeft niet veel tijd te kosten en je steekt er veel van op.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Alex) schreef op maandag 21 februari 2011 @ 08:22:
Het in het viewmodel definiëren vind ik nog niet eens zo ranzig, het VM is immers een representatie van de data ten behoeve van de view, en een kleur mag daar denk ik best in staan. Het alternatief is een valueconverter wat ook niet een al te lelijke oplossing is, zolang je het enigszins generiek opzet. :)
Behalve dan dat mijn viewmodel m'n model was ;). Converter noemde ik trouwens al in mijn post, maar da's gewoon veel meer werk.

[ Voor 3% gewijzigd door .oisyn op 21-02-2011 10:37 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
Hangt er vanaf. Ik heb een BooleanValueConverter gemaakt die een boolean als input ontvangt, en in een ResourceDictionary kijkt of hij een bijpassende key kan vinden. Zo kan ik die converter overal inzetten waar ik iets geconverteerd wil hebben van boolean naar Visibility, Color, FontStyle, noem maar op.

We are shaping the future


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 00:31

alienfruit

the alien you never expected

Ik heb gewoon een BooleanProcessor.process(input) die een string slikt en vervolgens true/boolean returned. Omdat er een reeks externe partijen zijn die de volgende response geven voor een boolean (e.g. success=ja): 0, 1, ja, nein, yes, no, true, false. Soms nog door elkaar in een web service :X

[ Voor 8% gewijzigd door alienfruit op 21-02-2011 11:04 ]


Acties:
  • 0 Henk 'm!

  • Hoogie2004
  • Registratie: Mei 2005
  • Laatst online: 21:02

Hoogie2004

Whohooooo

alienfruit schreef op maandag 21 februari 2011 @ 11:03:
Omdat er een reeks externe partijen zijn die de volgende response geven voor een boolean (e.g. success=ja): 0, 1, ja, nein, yes, no, true, false. Soms nog door elkaar in een web service :X
Die volgen gewoon de internationale standaard (de pas je maar aan-standaard).

My iRacing profile | Strava


Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
Booleans... klinkt misschien een beetje vaag, maar hoe vaak ik wel niet een tri-state boolean nodig heb :X

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

false, true, filenotfound? :+

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • creator1988
  • Registratie: Januari 2007
  • Laatst online: 12-10 07:45
D-Raven schreef op maandag 21 februari 2011 @ 11:21:
Booleans... klinkt misschien een beetje vaag, maar hoe vaak ik wel niet een tri-state boolean nodig heb :X
C#:
1
Nullable<bool>

?

Of http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx

Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Hoogie2004 schreef op maandag 21 februari 2011 @ 11:16:
Die volgen gewoon de internationale standaard (de pas je maar aan-standaard).
Heh, herkenbaar :) Wat je al niet aan werk moet doen om dat soort zaken af te vangen. Dan krijg je dus van die WTF-achtige oplossingen met een Hashtable met keys als "Ja", "ja", "yes", "1", "true", "yup" etc en booleans als values.

Ben nu trouwens met een xml "parser" bezig. De standaard parsers was namelijk "kapot" en dus moet er zelf een "parser" geschreven worden. Wat is er nu het geval: de gegenereerde XML claimt UTF-8 te zijn maar is eigenlijk gewoon text tussen XML tags. De standaard XML parsers struikelen geheel terecht over over rare tekens die eigenlijk nooit voorkomen, zoals een ë (wie heeft er nu in hemelsnaam zo iets raars in z'n naam!), dus moet er een "nieuwe parser" komen.

Ik maak waarschijnlijk gewoon een eigen streamreader die die meuk naar fatsoenlijk UTF-8 omzet, maargoed.
Maybe
Perhaps
QuiteCertain
Dunno
DontCare
Whatever

Fuzzy-logic ;)

[ Voor 9% gewijzigd door Hydra op 21-02-2011 11:29 ]

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
oops

[ Voor 96% gewijzigd door Hydra op 21-02-2011 11:29 ]

https://niels.nu


Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
:+ Ik had het kunnen weten dat die referentie aangehaald zou worden natuurlijk :D

Maar inderdaad, Nullable<bool> bied uitkomst, en voordat we nullable's hadden was het de TriStateBoolean klasse :+

Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
Hydra schreef op maandag 21 februari 2011 @ 11:27:
[...]


Heh, herkenbaar :) Wat je al niet aan werk moet doen om dat soort zaken af te vangen. Dan krijg je dus van die WTF-achtige oplossingen met een Hashtable met keys als "Ja", "ja", "yes", "1", "true", "yup" etc en booleans als values.

Ben nu trouwens met een xml "parser" bezig. De standaard parsers was namelijk "kapot" en dus moet er zelf een "parser" geschreven worden. Wat is er nu het geval: de gegenereerde XML claimt UTF-8 te zijn maar is eigenlijk gewoon text tussen XML tags. De standaard XML parsers struikelen geheel terecht over over rare tekens die eigenlijk nooit voorkomen, zoals een ë (wie heeft er nu in hemelsnaam zo iets raars in z'n naam!), dus moet er een "nieuwe parser" komen.

Ik maak waarschijnlijk gewoon een eigen streamreader die die meuk naar fatsoenlijk UTF-8 omzet, maargoed.
Je hebt altijd nog de CData tag. Dan hoef je niet een eigen parser te schrijven:P

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Nullable<bool> biedt geen goed gedefinieerde tristate logic, dus dat zou ik niet zien als een goede oplossing. "Geen waarde" heeft ook een andere semantische betekenis dan "onbepaald"

[ Voor 54% gewijzigd door .oisyn op 21-02-2011 11:36 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
D-Raven schreef op maandag 21 februari 2011 @ 11:31:
Je hebt altijd nog de CData tag. Dan hoef je niet een eigen parser te schrijven:P
Als ik iets aan de invoer zou kunnen veranderen zou ik dit issue niet hebben :)
.oisyn schreef op maandag 21 februari 2011 @ 11:32:
Nullable<bool> biedt geen goed gedefinieerde tristate logic, dus dat zou ik niet zien als een goede oplossing.
Daarom gebruikt een echte held sowieso geen booleans maar altijd ints. 1 = false, 0 = true, 2 = maybe, 255 = reserved en alles daartussen zijn magic numbers in je code ;)

[ Voor 41% gewijzigd door Hydra op 21-02-2011 11:34 ]

https://niels.nu


Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

Nullable<bool> gebruik ik idd ook wel eens, ziet er dirty uit, maar op zich een goede oplossing.. in databases kan je het ook op deze manier gebruiken btw :)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

.oisyn schreef op maandag 21 februari 2011 @ 11:32:
Nullable<bool> biedt geen goed gedefinieerde tristate logic, dus dat zou ik niet zien als een goede oplossing.
defcon84 schreef op maandag 21 februari 2011 @ 11:36:
Nullable<bool> gebruik ik idd ook wel eens, ziet er dirty uit, maar op zich een goede oplossing..
8)7

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a || b;
    Console.WriteLine(c);
}

Compile error.

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a.Value || b.Value;
    Console.WriteLine(c);
}

Exception.

[ Voor 28% gewijzigd door .oisyn op 21-02-2011 11:50 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
.oisyn schreef op maandag 21 februari 2011 @ 11:32:
Nullable<bool> biedt geen goed gedefinieerde tristate logic, dus dat zou ik niet zien als een goede oplossing. "Geen waarde" heeft ook een andere semantische betekenis dan "onbepaald"
Oh, stiekem editten he, boefje! (sorry, beetje veel tegenslagen vanochtend al, gaat een lange week worden, dus ik ben wat melig).

Ik weet niet of "geen waarde" perse een andere betekenis heeft als "onbepaald". Volgens mij is dat afhankelijk van het ontwerp. Oftewel het ontwerp bepaalt wat data betekend, niet de data zelf. Als iets echt 3 states kan hebben hoor je er natuurlijk netjes een enum oid voor te gebruiken.

[ Voor 7% gewijzigd door Hydra op 21-02-2011 11:41 ]

https://niels.nu


Acties:
  • 0 Henk 'm!

  • creator1988
  • Registratie: Januari 2007
  • Laatst online: 12-10 07:45
Hydra schreef op maandag 21 februari 2011 @ 11:33:
[...]


Als ik iets aan de invoer zou kunnen veranderen zou ik dit issue niet hebben :)


[...]


Daarom gebruikt een echte held sowieso geen booleans maar altijd ints. 1 = false, 0 = true, 2 = maybe, 255 = reserved en alles daartussen zijn magic numbers in je code ;)
Op een gegeven moment een product in onderhoud gekregen dat in India was gebakken, die sloegen alle two-state values op in een char(2) veld. Vreemd genoeg sloegen ze tri-states niet op in een char(3).

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Hydra schreef op maandag 21 februari 2011 @ 11:40:
Ik weet niet of "geen waarde" perse een andere betekenis heeft als "onbepaald". Volgens mij is dat afhankelijk van het ontwerp. Oftewel het ontwerp bepaalt wat data betekend, niet de data zelf. Als iets echt 3 states kan hebben hoor je er natuurlijk netjes een enum oid voor te gebruiken.
Een tristate boolean is niet zomaar iets met 3 states. Het is een { true, false, indeterminate } met goedgedefinieerde logica operatoren.

true || indeterminate -> true
_ || indeterminate -> indeterminate

false && indeterminate -> false
_ && indeterminate -> indeterminate

Beter gebruik je dus gewoon een struct ipv een Nullable<bool>

[ Voor 4% gewijzigd door .oisyn op 21-02-2011 11:48 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Hydra schreef op maandag 21 februari 2011 @ 11:40:
[...]
Ik weet niet of "geen waarde" perse een andere betekenis heeft als "onbepaald". Volgens mij is dat afhankelijk van het ontwerp. Oftewel het ontwerp bepaalt wat data betekend, niet de data zelf. Als iets echt 3 states kan hebben hoor je er natuurlijk netjes een enum oid voor te gebruiken.
Een enum voor de waardes misschien, maar het is wel zo handig om er een wrapper class/struct omheen te hebben zodat je gewoon de verschillende operators kunt implementeren.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

.oisyn schreef op maandag 21 februari 2011 @ 11:37:
[...]


[...]

8)7

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a || b;
    Console.WriteLine(c);
}

Compile error.

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a.Value || b.Value;
    Console.WriteLine(c);
}

Exception.
ok, lawyered :)
maar in mijn defence gebruikte ik het enkel als een return value :)
en dan doe ik een if (bla != null) ...

Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
@oisyn
Het klopt inderdaad dat je een goed gedefinieerde "default" waarde mist dan.
.oisyn schreef op maandag 21 februari 2011 @ 11:37:
[...]


[...]

8)7

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a || b;
    Console.WriteLine(c);
}

Compile error.

C#:
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
{
    Nullable<bool> a, b;

    a = null;
    b = true;
    bool c = a.Value || b.Value;
    Console.WriteLine(c);
}

Exception.
Compile error want een nullable is een klasse en geen value type. 2de Voorbeeld kan dus wel.
Alleen krijg je daar een exception omdat je bij b eerst moet controleren of het een waarde heeft met HasValue.
Of je gebruikt GetValueOrDefault() i.p.v van Value

edit: niet alleen bij b natuurlijk, eigenlijk bij allebei :P

[ Voor 3% gewijzigd door D-Raven op 21-02-2011 12:15 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ik snap ook wel waarom je die dingen krijgt. Ik toon enkel aan dat tristate logic niet makkelijk is met nullable booleans. En "default" is iets wat er compleet niet in thuis hoort, want dat is gewoon true of false, en geen derde staat.

[ Voor 30% gewijzigd door .oisyn op 21-02-2011 12:17 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 01:04
De default van GetValueOrDefault van een nullable type is eigenlijk hetzelfde als default(T), waarbij dit voor een boolean false is.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Uit de losse pols
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
    struct TriStateBool
    {
        public static TriStateBool Indeterminate = new TriStateBool(State.Indeterminate);

        private enum State { Indeterminate, False, True }
        private State state;

        public bool IsIndeterminate { get { return state == State.Indeterminate; } }
        public bool IsFalse { get { return state == State.False; } }
        public bool IsTrue { get { return state == State.True; } }

        private TriStateBool(State state)
        {
            this.state = state;
        }

        public static TriStateBool operator !(TriStateBool a)
        {
            if (a.IsIndeterminate)
                return Indeterminate;
            return a.IsFalse;
        }

        public static TriStateBool operator ==(TriStateBool a, TriStateBool b)
        {
            if (a.IsIndeterminate || b.IsIndeterminate)
                return Indeterminate;
            return a.IsTrue == b.IsTrue;
        }

        public static TriStateBool operator !=(TriStateBool a, TriStateBool b)
        {
            return !(a == b);
        }

        public static TriStateBool operator &(TriStateBool a, TriStateBool b)
        {
            if (a.IsFalse || b.IsFalse)
                return false;
            if (a.IsIndeterminate || b.IsIndeterminate)
                return Indeterminate;
            return true;
        }

        public static TriStateBool operator |(TriStateBool a, TriStateBool b)
        {
            if (a.IsTrue || b.IsTrue)
                return true;
            if (a.IsIndeterminate || b.IsIndeterminate)
                return Indeterminate;
            return false;
        }

        public static implicit operator TriStateBool(bool value)
        {
            return new TriStateBool(value ? State.True : State.False);
        }

        public static explicit operator bool(TriStateBool value)
        {
            return value.IsTrue;
        }

        public override bool Equals(object o)
        {
            if (!(o is TriStateBool))
                return false;
            return state == ((TriStateBool)o).state;
        }

        public override int GetHashCode()
        {
            return state.GetHashCode();
        }

        public override string ToString()
        {
            return state.ToString();
        }
    }

    static class Program
    {
        static void Main(string[] args)
        {
            TriStateBool a = true;
            TriStateBool b = TriStateBool.Indeterminate;

            Console.WriteLine(a | b);
            Console.WriteLine(a & b);

            Console.WriteLine(a == b);
            Console.WriteLine(a == a);
            Console.WriteLine(b == b);

            Console.WriteLine(!a);
            Console.WriteLine(!b);
        }
    }

Jammer dat je && en || niet mag overloaden.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

Ik blijf Maybe Bool (in Haskell) toch begrijpelijker vinden.

[ Voor 6% gewijzigd door Verwijderd op 21-02-2011 12:44 ]


Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
Voor nullable values kun je in C# toch ook een ? gebruiken?

C#:
1
bool? foo;


Volgens mij maakt hij hier automatisch Nullable<bool> van, maar het is wel korter. :P

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Davio schreef op maandag 21 februari 2011 @ 12:52:
Voor nullable values kun je in C# toch ook een ? gebruiken?

C#:
1
bool? foo;


Volgens mij maakt hij hier automatisch Nullable<bool> van, maar het is wel korter. :P
Dat is inderdaad gewoon een andere notatie voor een Nullable type.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 02-10 16:55
Verwijderd schreef op maandag 21 februari 2011 @ 12:44:
Ik blijf Maybe Bool (in Haskell) toch begrijpelijker vinden.
Mijn stem gaat voor FileNotFound, :+.

Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
Heb net weer rollercoaster tycoon 2 "gekocht". Hopelijk trekt mijn PC het :+

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

.oisyn schreef op maandag 21 februari 2011 @ 12:41:
Uit de losse pols
C#:
1
2
3
4
    struct TriStateBool
    {
        // ...
    }

Jammer dat je && en || niet mag overloaden.
Ik zou 'm Trool noemen hoor :)

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Het kan aan mij liggen, maar volgens mij zuigt de webinterface van TopDesk.

Ik net een heel verhaal getikt, maar m'n internetverbinding was wat langzaam. De volledige tekst stond in de textarea dus ik klik op "Opslaan". Een halve minuut later komt de kaart weer naar voren, en m'n halve tekst staat er maar in! :(

Ik heb geen webdevelopmenttools geïnstalleerd staan dus kan niet snel kijken wat er aan de hand is, maar er wordt wel een soort input listener aan de textarea gekoppeld. Het zal toch niet dat dat geüpload wordt terwijl je typt... :X

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

defcon84 schreef op maandag 21 februari 2011 @ 13:55:
[...]


Ik zou 'm Trool noemen hoor :)
Jij zou een nullable gebruiken.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
In het kader van Reflector en Redgate:

http://wiki.sharpdevelop.net/ilspy.ashx

Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 22:10

RayNbow

Kirika <3

Verwijderd schreef op maandag 21 februari 2011 @ 12:44:
Ik blijf Maybe Bool (in Haskell) toch begrijpelijker vinden.
Dat werkt anders dan het gedrag wat .oisyn in "De Devschuur Coffee Corner" beschreef. Bij een Maybe Bool is het resultaat Nothing wanneer een van de operanden dat is.**

(** Ik negeer voor het gemak even het bestaan van ⊥)

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • 0 Henk 'm!

  • Jan_V
  • Registratie: Maart 2002
  • Laatst online: 22:29
Pff, vandaag enkele uren aan het zoeken geweest waarom een bepaalde bugmelding optrad bij onze tester. Kon het maar niet vinden, alles in de web.config en configuratie bestand stonden correct ingesteld.
Uiteindelijk zag ik dat 2 verschillende variabelen (sleutel en id) met dezelfde waarde werden gevuld. Dat moest dus wel een typo zijn, echter was de config klasse wel correct.

Wat blijkt, er was nog een config klasse in het project, met dezelfde naam, maar een andere namespace, waar deze typo in was gemaakt. Nooit bij stil gestaan dat iemand in hetzelfde project 2x een config klasse zou maken, maar in een andere (generieke) namespace zou stoppen.

Nou ja, is opgelost en kan nu dus worden opgeleverd....

Battle.net - Jandev#2601 / XBOX: VriesDeJ


Acties:
  • 0 Henk 'm!

  • alwinuzz
  • Registratie: April 2008
  • Laatst online: 22:04
.oisyn schreef op maandag 21 februari 2011 @ 12:41:
Jammer dat je && en || niet mag overloaden.
Als je de operators true en false overload, krijg je && en || er gratis bij toch?

Inderterminate is dan én niet true, én niet false denk ik.

Edit: http://stackoverflow.com/...of-defining-bool-operator
dus je kan overloaden:
&
|
true
false
implicit/explicit convert from/to bool (of iets anders)

[ Voor 26% gewijzigd door alwinuzz op 21-02-2011 14:55 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

true en false operators overloaden :?. Je kunt toch alleen maar de bool operator overloaden?

.edit: hmm idd, dat werkt ook goed. Vaag :)
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        public static bool operator true(TriStateBool value)
        {
            return value.IsTrue;
        }

        public static bool operator false(TriStateBool value)
        {
            return value.IsFalse;
        }


        static void Main(string[] args)
        {
            TriStateBool a = true;
            TriStateBool b = TriStateBool.Indeterminate;

            Console.WriteLine(a || b);
            Console.WriteLine(a && b);
        }

Geeft ook doodleuk indeterminate bij a && b.

[ Voor 82% gewijzigd door .oisyn op 21-02-2011 15:00 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

.oisyn schreef op maandag 21 februari 2011 @ 14:14:
[...]

Jij zou een nullable gebruiken.
_O- _O-
sorry kerel, ik was je voor ;)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

.oisyn schreef op maandag 21 februari 2011 @ 14:51:
.edit: hmm idd, dat werkt ook goed. Vaag :)
Blijkbaar wordt een expressie als 'a || b' dan uitgevoerd als 'operator true(a) ? true : a | b'

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
defcon84 schreef op maandag 21 februari 2011 @ 14:57:
[...]

_O- _O-


[...]


sorry kerel, ik was je voor ;)
Ah wel gezien, maar alweer vergeten :P

Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

D-Raven schreef op maandag 21 februari 2011 @ 15:22:
[...]
Ah wel gezien, maar alweer vergeten :P
ach zoiets mag wel een paar keer herhaald worden :)

Acties:
  • 0 Henk 'm!

  • dcm360
  • Registratie: December 2006
  • Niet online

dcm360

Moderator Discord

HD7767 powered

Gamebuster schreef op maandag 21 februari 2011 @ 13:40:
Heb net weer rollercoaster tycoon 2 "gekocht". Hopelijk trekt mijn PC het :+
Hm, ook net maar weer eens uit de kast gehaald, meteen krijg ik weer zon Win98 nostalgisch gevoel... Bij deze kan ik RCT2 feliciteren met het als eerste programma laten vastlopen van mn computer :P De originele RCT werkt overigens wel stabiel, en die speel ik ook nogal de laatste tijd. En het blijft ook leuk om te spelen :)

Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
Ik draai 'm in Windows 7 in VirtualBox op m'n macbook

> http://i.imgur.com/qmI2J.png

alleen het geluid doet een beetje raar, maar verder draait het prima.

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

Verwijderd

Ik snap er niets van, als ik handmatig een HTTP request naar een Ruby on Rails server doe gaat het goed, maar doe ik 'm vanuit m'n applicatie dan gaat het fout :?

Daar ben ik verdammt al het hele weekend mee bezig ;(

Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 17:24
Vanuit welke omgeving probeer je een http request te doen? Indien je C# -> WebRequest gebruikt, vergeet niet om de CookieContainer te instantieren.

Acties:
  • 0 Henk 'm!

Verwijderd

Vanuit Objective-J. Gaat onder water dus met AJAX...maar nu krijg ik geen server error meer. Nu wordt de data gewoon niet geparsed :X

edit:

Ah! Gefixed, ik had gewoon de verkeerde content-type meegegeven...

[ Voor 24% gewijzigd door Verwijderd op 21-02-2011 17:03 ]


Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 19:05

Standeman

Prutser 1e klasse

Verwijderd schreef op maandag 21 februari 2011 @ 16:28:
Ik snap er niets van, als ik handmatig een HTTP request naar een Ruby on Rails server doe gaat het goed, maar doe ik 'm vanuit m'n applicatie dan gaat het fout :?

Daar ben ik verdammt al het hele weekend mee bezig ;(
Blocked je firewall de applicatie niet?

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 23:31

MueR

Admin Devschuur & Discord

is niet lief

Woei.. Nieuwe 2e monitor is binnen. Van een 20" (1440x900) naar 23" (1920x1080). Nu de laptop nog inruilen voor een desktop (met een primare monitor) en ik kan er weer even tegen aan.

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

Verwijderd

Standeman schreef op maandag 21 februari 2011 @ 17:00:
[...]

Blocked je firewall de applicatie niet?
Zou gekund hebben als ik niet de server op localhost had draaien en de applicatie ook :P. Nee het was de content-type.

Thank god for Wireshark!

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Ik heb Wireshark nooit werkend gekregen op localhost :P Niet dat ik er ooit hard naar gezocht heb. En eigenlijk ook nooit nodig gehad. :P

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

Verwijderd

Als je op Mac of Linux zit moet je de /dev/bpf* chmod naar 777 (heb ik in ieder geval gedaan, ja ik weet het niet, niet veilig :P).

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 01:01
Ik meen dat de correcte manier via de dumpcap wrapper was.

Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

MueR schreef op maandag 21 februari 2011 @ 17:09:
Woei.. Nieuwe 2e monitor is binnen. Van een 20" (1440x900) naar 23" (1920x1080). Nu de laptop nog inruilen voor een desktop (met een primare monitor) en ik kan er weer even tegen aan.
zowiezo vind ik devven op een laptop best kut..
gewoon desktop met 2 schermen van min 20" is perfect :)

Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
Ik heb er geen problemen mee, laptop, desktop of zelfs netbook. Zolang het maar Visual Studio + ReSharper is :+

We are shaping the future


Acties:
  • 0 Henk 'm!

  • ValHallASW
  • Registratie: Februari 2003
  • Niet online
Gamebuster schreef op maandag 21 februari 2011 @ 16:11:
Ik draai 'm in Windows 7 in VirtualBox op m'n macbook

> http://i.imgur.com/qmI2J.png

alleen het geluid doet een beetje raar, maar verder draait het prima.
Als je toch de moeite neemt om een virtualbox te pakken, dan kan je beter winXP installeren. De issues met het geluid en het beeld (dat af en toe knippert, iig bij mij) zijn dan opgelost. Ook schijnen er in windows 7 issues met schrijfrechten te zijn, zodat 'ie na een half uur spontaan crasht.

Nee, niet echt future-proof geschreven :-(

Acties:
  • 0 Henk 'm!

Verwijderd

Pfff. Zend Framework voor de Mac installeren via MacPorts duurt lang! :P

Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

Alex) schreef op dinsdag 22 februari 2011 @ 09:22:
Ik heb er geen problemen mee, laptop, desktop of zelfs netbook. Zolang het maar Visual Studio + ReSharper is :+
haha ja ok, dat is wel het belangrijkste :D

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 21:22

Haan

dotnetter

Even een plug voor mOrPhie blog: DennieBee's blog: DevDays wildcard sessies! :)

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 22:10

RayNbow

Kirika <3

Om hier nog even op terug te komen:
Verwijderd schreef op maandag 21 februari 2011 @ 12:44:
Ik blijf Maybe Bool (in Haskell) toch begrijpelijker vinden.
RayNbow schreef op maandag 21 februari 2011 @ 14:20:
[...]

Dat werkt anders dan het gedrag wat .oisyn in "De Devschuur Coffee Corner" beschreef. Bij een Maybe Bool is het resultaat Nothing wanneer een van de operanden dat is.**

(** Ik negeer voor het gemak even het bestaan van ⊥)
De TriState booleans komen eerder overheen met het type [Bool] in Haskell. Waarbij true correspondeert met [True], false met [False] en indeterminate met [False,True].

Voorbeeldje dat de listmonad hergebruikt:
 
Haskell: KleeneLogic.hs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import qualified Prelude
import Prelude hiding ((||), (&&), not)
import Data.List (sort, nub)
import Data.Function (on)
import Control.Monad (liftM2, forM_)

----

class Logic b where
    (&&) :: b -> b -> b
    (||) :: b -> b -> b
    not :: b -> b
    true :: b
    false :: b
    fromBool :: Bool -> b
    
    fromBool b = if b then true else false
    true = fromBool True
    false = fromBool False


instance Logic Bool where
    (&&) = (Prelude.&&)
    (||) = (Prelude.||)
    not = Prelude.not
    fromBool = id


----


data Kleene = Certainly Bool | Unknown deriving (Show, Eq)

toList :: Kleene -> [Bool]
toList (Certainly b) = [b]
toList Unknown = [False,True]

fromList :: [Bool] -> Kleene
fromList bs = case (nub.sort) bs of
  [b] -> Certainly b
  _   -> Unknown


instance Logic Kleene where
    (&&) = (fromList.) . on (liftM2 (&&)) toList
    (||) = (fromList.) . on (liftM2 (||)) toList
    not = fromList . map not . toList
    fromBool = fromList . return


----

main :: IO ()
main = do
  let values = [false, true, Unknown]
   
  putStrLn "A B | v ^ | not A"
  putStrLn "-----------------"
  forM_ values $ \a ->
    forM_ values $ \b ->
      printLine [a, b, a || b, a && b, not a]
  
  where 
    showK (Certainly True) = "T"
    showK (Certainly False) = "F"
    showK Unknown = "?"
    
    printLine [a,b,c,d,e] = 
      putStrLn . unwords $ 
      map showK [a,b]
      ++ "|" : map showK [c,d]
      ++ ["|  ", showK e]

$ runghc KleeneLogic.hs
A B | v ^ | not A
-----------------
F F | F F |   T
F T | T F |   T
F ? | ? F |   T
T F | T F |   F
T T | T T |   F
T ? | T ? |   F
? F | ? F |   ?
? T | T ? |   ?
? ? | ? ? |   ?

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • 0 Henk 'm!

  • Gamebuster
  • Registratie: Juli 2007
  • Laatst online: 27-09 22:01
Verwijderd schreef op dinsdag 22 februari 2011 @ 10:01:
Pfff. Zend Framework voor de Mac installeren via MacPorts duurt lang! :P
Ieder programma installeren via macpors duurt lang

Let op: Mijn post bevat meningen, aannames of onwaarheden


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 21:22

Haan

dotnetter

Leuke bug geplet vandaag:
Ik had een formulier (met bijna 70 invoervelden ;( maar dat terzijde), met een aantal datumvelden. Deze geïmplementeerd als textbox, met een date css class, zodat ik met jQuery een netjes watermerk 'dd-mm-yyyy' erin kon zetten :) Werkte prima.
Alleen wil je ook checken dat er echt een geldige datum wordt ingevuld, dus met een RegularExpression checken of datum klopt, dat werkte ook. Alleen werden alle velden waar je niks invulde (velden niet verplicht) steeds ten onrechte gemarkeerd als ongeldige input. Dus ik dacht dat de regex ook lege strings moest toestaan, dus dat in een losse pagina getest, werkte prima.

Uiteindelijk schoot de fout te binnen: het watermerk 'dd-mm-yyyy' is natuurlijk ook gewoon tekst in het veld |:( Dus die toegevoegd aan de regex en nu werkt het :)

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
HTML5, echt iets voor jou, Haan.

<input type="date" placeholder="dd-mm-yyyy"> :)

Jammer dat de ondersteuning nog niet perfect is en je met fallbacks moet werken. :(

Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

CodeCaster schreef op maandag 21 februari 2011 @ 17:41:
Ik heb Wireshark nooit werkend gekregen op localhost :P Niet dat ik er ooit hard naar gezocht heb. En eigenlijk ook nooit nodig gehad. :P
Wireshark en localhost op windows werkt inderdaad niet om dat Windows de netwerk interfaces by-passed :/

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • alwinuzz
  • Registratie: April 2008
  • Laatst online: 22:04
Ik weet niet of dat Wireshark of Fiddler was, maar je kan ook je LAN ip of computernaam gebruiken ipv localhost.
Wel een beetje pielen met de firewall soms.

Acties:
  • 0 Henk 'm!

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 10-09 22:45
Voor de geïnteresserde biedt pluralsight deze video's 24 uur gratis aan.
http://www.pluralsight-tr...spx?n=jquery-fundamentals

Acties:
  • 0 Henk 'm!

  • Jan_V
  • Registratie: Maart 2002
  • Laatst online: 22:29
Ze zijn daar wel van de gratis video's de laatste tijd.

Battle.net - Jandev#2601 / XBOX: VriesDeJ


Acties:
  • 0 Henk 'm!

  • Ryur
  • Registratie: December 2007
  • Laatst online: 21:27
Megamind schreef op dinsdag 22 februari 2011 @ 21:10:
Voor de geïnteresserde biedt pluralsight deze video's 24 uur gratis aan.
http://www.pluralsight-tr...spx?n=jquery-fundamentals
Hmm.. ben benieuwd of ik ze kan downloaden, vandaag geen tijd om te kijken; maar zijn wel intressant

Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 12-10 19:34

Matis

Rubber Rocket

alwinuzz schreef op dinsdag 22 februari 2011 @ 16:26:
Ik weet niet of dat Wireshark of Fiddler was, maar je kan ook je LAN ip of computernaam gebruiken ipv localhost.
Wel een beetje pielen met de firewall soms.
Dat gaat hoogstwaarschijnlijk niet werken. Mijn PC heeft twee netwerkpoorten. De metric op de ene NIC (laten we zeggen x.x.x.10) zet je op zijn laagst (1 dus) en de metric op de tweede NIC x.x.x.20 zet je hoger (10 ofzo).
Wanneer je dan je wireshark aanzet, kun je kiezen of je op de verzendende kant (x.x.x.10) of op de ontvangende kant (x.x.x.20) wilt capturen.

Wat meestal nog makkelijker is, is een virtuele machine of een proxy-server.

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • elnaeth
  • Registratie: Januari 2009
  • Laatst online: 25-09 08:53
Net tegen een vervelend probleem aangelopen in mijn projectje :x

Als je iets gaat editen moet je ten eerste de rechten daartoe hebben, dat lukt nog wel.

Om daadwerkelijk je wijziging op te slaan is weer de primary key (ID nummer) nodig van dat record in de database. En daar zit hem het probleem; ik werk met asp.net dus dat id ligt nu bij de client. Wie zegt dat die client niet fijn dat nummer verandert in zijn pagina, en dan een item waar hij dus mogelijk geen rechten toe heeft, overschrijft?

Ik kan er gewoonweg geen goede zoekterm voor bedenken voor het googlen, terwijl ik zowat zeker weet dat anderen dit probleem tegengekomen zijn, en er een oplossing voor hebben bedacht... Iemand van jullie toevallig iets tegengekomen van dien aard ooit? -_- ik word er onderhand echt helemaal gek van dat ik gewoon geen mooie oplossing kan bedenken zonder andere problemen tegen te komen :P

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Herhaal dezelfde rechtencheck bij het verwerken van de form submit?
[/captain obvious]

{signature}


Acties:
  • 0 Henk 'm!

  • elnaeth
  • Registratie: Januari 2009
  • Laatst online: 25-09 08:53
Dat is zeker een oplossing, maar ik wil eigenlijk de database zoveel mogelijk ontlasten.

Had die oplossing zeker al bedacht, maar het moet toch zeker ook anders kunnen? :P

*Had inderdaad misschien beter kunnen vermelden dat ik een alternatief zocht :P

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 20:01
Uiteindelijk wil je die check in het model o.i.d. sowieso doen. Bij het ophalen van een record ook. Dus 2x doe je dat sowieso. Wat je kan doen is bijvoorbeeld rechten cachen, als performance daadwerkelijk een probleem is want in basis is je database er voor om te werken, die wordt niet snel moe ;)

Acties:
  • 0 Henk 'm!

  • Hillie
  • Registratie: Januari 2000
  • Laatst online: 23:50

Hillie

Poepen = ultieme ontspanning

Heerlijk zeg. Daaaaaagen verspild aan het door de blinde spot gemaskeerde probleempje dat 1 adres de hexadecimale 0x aan het begin miste. :+

Liefhebber van schieten en schijten. Ouwehoer en niet-evangelisch atheist.

Daniel36: Dat zeg ik(?) Nee, dat zeg ik niet, je hebt gelijk.


Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

elnaeth schreef op dinsdag 22 februari 2011 @ 23:25:
Net tegen een vervelend probleem aangelopen in mijn projectje :x

Als je iets gaat editen moet je ten eerste de rechten daartoe hebben, dat lukt nog wel.

Om daadwerkelijk je wijziging op te slaan is weer de primary key (ID nummer) nodig van dat record in de database. En daar zit hem het probleem; ik werk met asp.net dus dat id ligt nu bij de client. Wie zegt dat die client niet fijn dat nummer verandert in zijn pagina, en dan een item waar hij dus mogelijk geen rechten toe heeft, overschrijft?

Ik kan er gewoonweg geen goede zoekterm voor bedenken voor het googlen, terwijl ik zowat zeker weet dat anderen dit probleem tegengekomen zijn, en er een oplossing voor hebben bedacht... Iemand van jullie toevallig iets tegengekomen van dien aard ooit? -_- ik word er onderhand echt helemaal gek van dat ik gewoon geen mooie oplossing kan bedenken zonder andere problemen tegen te komen :P
In je sessie of (encrypted)viewstate opslaan? Na een postback ophalen, valideren of het nog klopt (record kan door een ander al verwijderd zijn, binnen een webapplicatie pas je bijna nooit locks toe namelijk) en je actie uitvoeren?

Bij sessie of opslag in een encrypted viewstate wens ik de gebruiker veel succes dit aan te passen. Overigens kun je zelf ook een soort validatie inbouwen door de ID op te slaan in de page samen met een (salted)hash van die ID, als de gebruiker slim genoeg is om de ID aan te passen vergeet hij waarschijnlijk de hash en valt hij alsnog door de mand. Zolang je hash algoritme niet gevonden wordt ben je veilig.

Daarnaast zou je zelfs een ID + random getal (wat dus niet te herleiden is naar de ID) kunnen opnemen in een DB en vervolgens meesturen naar de gebruiker, na post check je of die data inderdaad in je DB staat en verleent toegang tot de actie.

Er zijn dus meerdere wegen die naar Rome leiden. De laatste 2 zijn overigens wel het leukst om te bouwen, kun je een beetje spelen met hashes enzo. De eerst optie is het makkelijkste en snelste te implementeren.

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Je wilt sowieso die rechtencheck nog een keer doen. Wat als de rechten van de gebruiker zijn ingenomen tussen het ophalen van de editpagina en het submitten van z'n edit in?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Buiten het rechtenverhaal wat .oisyn aangeeft, wil je volgens mij ook niet serverside opslaan welke pagina de client aan het editen is, want dan wordt het heel lastig om meerdere pagina's open te hebben bij de client. Dan maak je het jezelf onnodig moeilijk.

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

Erkens schreef op woensdag 23 februari 2011 @ 08:52:
Buiten het rechtenverhaal wat .oisyn aangeeft, wil je volgens mij ook niet serverside opslaan welke pagina de client aan het editen is, want dan wordt het heel lastig om meerdere pagina's open te hebben bij de client. Dan maak je het jezelf onnodig moeilijk.
Als je de sessie gebruikt niet, maar als je het scenario met een ID + gegenereerde sleutel hanteert kan dat gewoon hoor. Als je de sessie toch wilt gebruiken moet je misschien iets creatiever te werk gaan, maar het opslaan van de gegevens op de server beperkt je mogelijkheden niet hoor.

The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Als je dit puur doet om het "probleem" van de TS op te lossen zou ik er niet aan beginnen, om voorgenoemde reden. Ten eerste denk ik niet dat de TS echt een probleem heeft, maar daarnaast, mocht een rechtencheck de database dan toch erg belasten, zou je er aan kunnen denken om die check dan op een andere manier te implementeren (wellicht met een cache oid)

[ Voor 52% gewijzigd door .oisyn op 23-02-2011 09:03 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • elnaeth
  • Registratie: Januari 2009
  • Laatst online: 25-09 08:53
Kijk, dat is nou het soort reacties waar ik op gehoopt had!

Vooral die salted/encrypted variant vind ik erg leuk en origineel, die ga ik waarschijnlijk dan ook gebruiken. (Kan ook zijn dat het allemaal onnodig blijkt te zijn en de database gewoon krachtig genoeg is... Maarja, shared hosting he..)

Wat Erkens en .Oisyn zeiden, daar heb ik inderdaad bij stilgestaan, maar voor mijn specifieke geval is het een randgeval waar ik geen rekening mee wil gaan houden (en dan bedoel ik het feit dat de client de rechten kwijtgeraakt is waar hij ze eerst wel had). Het gaat er echt om dat de client gewoon niet ergens iets kan toevoegen/veranderen waar hij de rechten nooit gehad heeft/zal hebben.

Erg fijn zo'n leuke stapel reacties op de maandagmorgen, zwengelt de werkdag weer lekker aan ;)

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 21:22

Haan

dotnetter

elnaeth schreef op woensdag 23 februari 2011 @ 09:29:

Erg fijn zo'n leuke stapel reacties op de maandagmorgen, zwengelt de werkdag weer lekker aan ;)
Het is woensdag 8)7

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

elnaeth schreef op woensdag 23 februari 2011 @ 09:29:
Wat Erkens en .Oisyn zeiden, daar heb ik inderdaad bij stilgestaan, maar voor mijn specifieke geval is het een randgeval waar ik geen rekening mee wil gaan houden (en dan bedoel ik het feit dat de client de rechten kwijtgeraakt is waar hij ze eerst wel had). Het gaat er echt om dat de client gewoon niet ergens iets kan toevoegen/veranderen waar hij de rechten nooit gehad heeft/zal hebben.
Een randgeval? Je wilt bij het ophalen van de data wel de rechten checken maar bij het opslaan boeit het niet? Of je de rechten nu checked tegen een cache (al dan niet in je sessie) of rechtstreeks tegen de database maakt niet uit, maar ik zou bij elke request toch wel controleren of dat toegestaan is!
Erg fijn zo'n leuke stapel reacties op de maandagmorgen, zwengelt de werkdag weer lekker aan ;)
* Erkens kijkt naar de kalender... Maandag :?

Acties:
  • 0 Henk 'm!

  • elnaeth
  • Registratie: Januari 2009
  • Laatst online: 25-09 08:53
... Holy shit, zie je weer hoe vreselijk wakker ik ben :+ :D

* doet meer koffie halen

Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

haha valt dat even mee eh :)
sneller weekend! :p

Acties:
  • 0 Henk 'm!

Verwijderd

Het voelt anders als een maandag :+

Acties:
  • 0 Henk 'm!

  • Jeffroiscool
  • Registratie: December 2006
  • Laatst online: 29-09 23:46

Jeffroiscool

Proud DD Member! :D

Beter dat het geen maandag was, dan had ik nog 5 dagen moeten werken haha.

League of Legends [Last Updated 22-08-2012]: [EUW] Jeffro (Now:Silver, S1:Bronze), RankedSolo5x5: 1502 [120W/106L], Dominion: 84W, TT: 3W, Normal: 504W


Acties:
  • 0 Henk 'm!

  • Hoogie2004
  • Registratie: Mei 2005
  • Laatst online: 21:02

Hoogie2004

Whohooooo

*O* *O* Rechtenissues *O* *O*

Handleiding aan het maken voor de installatie van SharePoint 2007 solutions die we bouwen. Initiële installatie is nooit beschreven. Kreeg een kale machine, en succes...

Lukt aardig. Alleen soms zitten wat vage rechten ver verborgen, en duurt het een tijd voordat ik alles heb gevonden en het werkt.

My iRacing profile | Strava


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
elnaeth schreef op woensdag 23 februari 2011 @ 09:29:
Kijk, dat is nou het soort reacties waar ik op gehoopt had!

Vooral die salted/encrypted variant vind ik erg leuk en origineel, die ga ik waarschijnlijk dan ook gebruiken. (Kan ook zijn dat het allemaal onnodig blijkt te zijn en de database gewoon krachtig genoeg is... Maarja, shared hosting he..)

Wat Erkens en .Oisyn zeiden, daar heb ik inderdaad bij stilgestaan, maar voor mijn specifieke geval is het een randgeval waar ik geen rekening mee wil gaan houden (en dan bedoel ik het feit dat de client de rechten kwijtgeraakt is waar hij ze eerst wel had). Het gaat er echt om dat de client gewoon niet ergens iets kan toevoegen/veranderen waar hij de rechten nooit gehad heeft/zal hebben.
Echt WTF. Doe niet zo moeilijk en maak gewoon van het optimaliseren vd rechtencheck (indien echt nodig) een aparte feature request. :z

{signature}


Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-10 14:42

Cloud

FP ProMod

Ex-moderatie mobster

Voutloos schreef op woensdag 23 februari 2011 @ 11:13:
[...]
Echt WTF. Doe niet zo moeilijk en maak gewoon van het optimaliseren vd rechtencheck (indien echt nodig) een aparte feature request. :z
Ik heb het idee dat het een prive project betreft, wat is er mis met er iets van leren?
Net tegen een vervelend probleem aangelopen in mijn projectje :x

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

Verwijderd

Fijn. De mugshots van iedereen die ooit op de HAN heeft gezeten zijn gemakkelijk te vinden via internet.

Acties:
  • 0 Henk 'm!

  • defcon84
  • Registratie: September 2009
  • Laatst online: 10-10 14:12

defcon84

Multipass?

heh een foutje gevonden in de 'Razor' assembly (System.Web.WebPages.dll) intellisense hints:
C#:
1
2
3
4
5
6
7
8
9
        public HelperResult RenderSection(string name);
        // Summary: *bla*
        // Parameters:
        //   name: *bla*
        //   required:
        //     true to specify that the section is required; otherwise, false. 
        //     The default is false.
        // Returns: *bla*
        public HelperResult RenderSection(string name, bool required);

daar staat dus: "The default is false."
maar als je RenderSection(string name) decompiled krijg je dit:
C#:
1
2
3
4
5
public HelperResult RenderSection(string name)
{
    bool required = true;
    return this.RenderSection(name, required);
}

}:O

[ Voor 3% gewijzigd door defcon84 op 23-02-2011 11:24 ]


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Cloud schreef op woensdag 23 februari 2011 @ 11:18:
[...]

Ik heb het idee dat het een prive project betreft, wat is er mis met er iets van leren?
Weinig, maar ik verklap dan alvast dat de les zal zijn dat je uiteindelijk gaat balen als je op random punten ivm een micro optimalisatie dingen op een alternatieve en complexe manier anders doet. :Y)

{signature}


Acties:
  • 0 Henk 'm!

  • Otherside1982
  • Registratie: Februari 2009
  • Laatst online: 21:36
defcon84 schreef op woensdag 23 februari 2011 @ 11:23:
heh een foutje gevonden in de 'Razor' assembly (System.Web.WebPages.dll) intellisense hints:
C#:
1
2
3
4
5
6
7
8
9
        public HelperResult RenderSection(string name);
        // Summary: *bla*
        // Parameters:
        //   name: *bla*
        //   required:
        //     true to specify that the section is required; otherwise, false. 
        //     The default is false.
        // Returns: *bla*
        public HelperResult RenderSection(string name, bool required);

daar staat dus: "The default is false."
maar als je RenderSection(string name) decompiled krijg je dit:
C#:
1
2
3
4
5
public HelperResult RenderSection(string name)
{
    bool required = true;
    return this.RenderSection(name, required);
}

}:O
Slaat het commentaar niet op de functie onder het commantaar dus:
code:
1
RenderSection(string name, bool required)
Dan zou het eventueel kunnen kloppen.
Ik vind het wel raar dat een default waarde in commentaar beschreven staat, dat zou toch beter in de functie definitie staan.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Cloud schreef op woensdag 23 februari 2011 @ 11:18:
[...]

Ik heb het idee dat het een prive project betreft, wat is er mis met er iets van leren?
Wat dacht je van leren dingen goed prioritiseren en je niet bezig houden met zaken die er eigenlijk niet toe doen? ;)
Otherside1982 schreef op woensdag 23 februari 2011 @ 11:49:
Slaat het commentaar niet op de functie onder het commantaar dus:
code:
1
RenderSection(string name, bool required)
Dan zou het eventueel kunnen kloppen.
Ik vind het wel raar dat een default waarde in commentaar beschreven staat, dat zou toch beter in de functie definitie staan.
Wat voor relevantie heeft een default waarde van een parameter die je sowieso moet specificeren?

[ Voor 44% gewijzigd door .oisyn op 23-02-2011 12:19 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-10 14:42

Cloud

FP ProMod

Ex-moderatie mobster

.oisyn schreef op woensdag 23 februari 2011 @ 12:18:
[...]

Wat dacht je van leren dingen goed prioritiseren en je niet bezig houden met zaken die er eigenlijk niet toe doen? ;)
Ook daar kun je van leren natuurlijk, maar om dit soort cases nu meteen weg te wuiven onder het mom van micro-optimalisatie (wat imho natuurlijk waar is) gaat misschien wel wat ver voor een privé project. Ja hij had een tweede rechtencheck voor het opslaan kunnen inbouwen, maar dat is rete simpel. Van de nu gekozen aanpak leert hij wellicht nog wat; ook al zal het in de praktijk niet snel nodig zijn. Maar ik denk dat iedereen hem dat wel duidelijk heeft gemaakt ;)

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
.oisyn schreef op woensdag 23 februari 2011 @ 12:18:
[...]
Wat voor relevantie heeft een default waarde van een parameter die je sowieso moet specificeren?
De default hoort natuurlijk bij de override die die param niet heeft. Maar het staat idd een beetje raar.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:16

.oisyn

Moderator Devschuur®

Demotivational Speaker

Exactly my point. Otherside1982 suggereert dat het commentaar misschien bij de functie hoort met 2 params, maar dat klopt natuurlijk niet.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1 ... 110 ... 201 Laatste

Dit topic is gesloten.

Let op:
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep, niet als vraagbaak