русский
Germany.ruForen → Архив Досок→ Programmierung

Унаследаться от static class?

08.06.17 17:05
Унаследаться от static class?
 
Murr_0002 постоялец
Murr_0002

Унаследаться от static class?


У меня снова нестандартный вопросик...


имеем вот такой список определений имен полей в таблице:

using System;

using System.Text;


namespace LiOrder.DAL.Glass
{
public static partial class GLAS_DATEN
{
public static class FieldName
{
public const string IDs = "IDNR";
public const string Type = "GL_TYP";
public const string Bez = "GL_BEZ";
public const string KzBez = "GL_KZ_BEZ";
public const string BezJn = "GL_BEZ_JN";
public const string Wagr = "GL_WAGR";
public const string OptJn = "gl_opt_jn";
public const string KenLip = "gl_ken_lip";
public const string Dicke = "GL_DICKE";
public const string MaxSeit1 = "GL_MAX_SEIT1";
public const string MaxSeit2 = "GL_MAX_SEIT2";
public const string Version = "gl_ver_pro";
public const string MaxBreite = "gl_stat_max_breite";
public const string MaxHoehe = "gl_stat_max_hoehe";
public const string MwstCode = "GL_MWST_CODE";
public const string MatKat = "GL_MAT_KAT";
public const string MatBlock = "GL_MAT_BLOCK";
public const string AbschichtJn = "GL_ABSCHICHT_JN";
public const string LagerFuehrung = "gl_lager_fuehrung";
public const string BeschStrukt = "GL_BESCH_STRUKT";
public const string FloatDicke = "GL_FLOAT_DICKE";
public const string KompAufbauJn = "GL_KOMP_AUFBAU_JN";
public const string GrafikFile = "GL_GRAFIK_FILE";
public const string FarbNo = "GL_FARB_NR";
public const string LagermasseJn = "gl_lagermasse_jn";
public const string ZeichngRef = "GL_ZEICHNG_REF";
public const string BearbJn = "GL_BEARB_JN";
public const string StdBreite = "GL_STD_BREITE";
public const string StdHoehe = "GL_STD_HOEHE";
public const string SdGroup = "GL_SD_GRUPPE";
public const string AlphaID = "GL_ALPHA_ID";
}
}
}


класс статический - экземпляры создаваться не будут.

Имена полей в таблице менятся, скорее всего, тоже не будут, а вот используемые константы-маркеры в теле будут уточнятся регулярно. Я просто не знаю что подразумевается под имеющимися именами и переименовываю в-то-что-мне-удобно по мере узнавания.


Помимо списка полей внутри

public static partial class GLAS_DATEN

определены классы таблицы, строки, выборки и некоторые другие.


Для полной приятности разработки все поделено на уровни - ДАЛ, БО, БЛ и т.д. и т.п.


Естественно, на каждом уровне нужен доступ к этому списку.

Частично это решается путем определения

using FieldName = LiOrder.DAL.Glass.GLAS_DATEN.FieldName;

Частично - потому как в этом случае список получается не расширяемым.

А мне как раз потребовалось его расширить. При этом копы-пасте делать совсем не хочется.


Есть какой вариант "унаследоваться" от статического класса и расширить списоk?


 

Sprung zu