Main menu:

Site search

Februar 2026
M D M D F S S
 1
2345678
9101112131415
16171819202122
232425262728  

Categories

Tags

Sql Server Semi Sequence

1. Eine Semi-Sequenz kann wie folgt erzeugt werden,hierzu ist einen eigene Tabelle notwendig, bei bedarf können die Sequenzen auch in eine eigene Tabelle verfrachtet werden:

CREATE PROCEDURE dbo.GetNextSequenceId
@TableName varchar(250)
AS
SET NOCOUNT ON

DECLARE
   @SqlStatement nvarchar(max),
   @SqlParameterDefinition nvarchar(max),
   @SequenceId bigint

SET @SqlStatement = 'INSERT INTO ['+@TableName+'] (Value) VALUES(1);
                                              SELECT @Sequence=IDENT_CURRENT('''+ @TableName +''');
                                              DELETE FROM ['+ @TableName +'] WHERE ID_Sequence=@Sequence;';
SET @SqlParameterDefinition = N'@Sequence bigint OUTPUT'

EXECUTE sp_executesql @SqlStatement, @SqlParameterDefinition, @Sequence=@SequenceId OUTPUT;

Select @SequenceId as 'SquenceId';

Unitity Container – Nützliches Aufrufe

1. Constructor Injection für die Auswahl eines bestimmten Constructor bei Multiple Choice
Container.RegisterType(typeof(ISerializationManager<>), typeof(SerializationManager<>), new InjectionConstructor());

2. Single Pattern Aufruf einer Factory
Container.RegisterType<ISession>(new InjectionFactory(c => SessionFactory.Instance.OpenSession()));

3. Parameterübergabe bei Constructor Injection
var dependencyInjection = new DependencyOverride<INHibSession>(container.Resolve<INHibSession>());
_repository = container.Resolve<IRepository<Entity>>(dependencyInjection);

Entity Framework Anbingung PostgreSql

1. Aktuellen Treiber von http://pgfoundry.org/frs/?group_id=1000140&release_id=1686 herunterladen (Framework 4.0)

2. NpgSql.dll und mono.security.dll mit Gac registrieren, wichtig Visual Studio Command Prompt als Administrator ausführen
gacutil -i "Pfad\Zur\Datei\Npgsql2.0.10-bin-ms.net4.0\Npgsql.dll"
gacutil  -i  "Pfad\Zur\Datei\Npgsql2.0.10-bin-ms.net4.0\mono.security.dll"

3. Update der Machine.config (C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config) in der Section <DbProviderFactories>

<add name="PostgreSQL Data Provider" invariant="Npgsql"description=".Net Framework Data Provider for PostgreSQL"type="Npgsql.NpgsqlFactory, Npgsql, Version=2.0.10.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />

4. Zur Zeit gibt es keine Design Time Unterstüzung, mittels des Tool edmgen kann das DataModel erzeugt werden.
edmgen /mode:FullGeneration /project:Test /c:"Server=localhost; User Id=dbuser; Password=password; Database=database" /provider:Npgsql