Bonjour.
J'ai un souci dans l'initialisation de champs static readonly dans une classe fille. On peut normalement initialiser ce genre de champ dans un constructeur statique.
J'ai deux classes A et B, B héritant de A. Je veux initialiser mon champ à une certaine valeur dans A mais à une autre valeur dans B. Si j'écris:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class A
{
  public static readonly int TAILLE;
 
  static A()
  {
    TAILLE = 10;
  {
}
 
class B : A
{
  static B()
  {
    TAILLE = 20;
  {
}
J'obtiens dans ma classe B l'erreur suivante:
A static readonly field cannot be assigned to (except in a static constructor or a variable initializer)
Il me semblait pourtant bien être dans un static constructor ?
J'ai un petit souci ! A vot'bon coeur !
Merci.

PS: j'ai oublié de préciser. J'utilise Visual C# 2010 Express et .NET 4.0