public object GetNext(SequencePropertyModel pm) { switch (pm.SequenceType) { case SequenceType.Guid: return(Guid.NewGuid()); case SequenceType.Uri: return(GetNextUri(pm.SequenceId, DateTime.Now.Year)); default: throw new NotImplementedException(string.Format("SequenceProvider.GetNext not implemented for sequence of type \"{0}\"", pm.SequenceType)); } }
private Column CreateSequencePropertyColumn(SequencePropertyModel propModel) { switch (propModel.SequenceType) { case SequenceType.Identity: return(new Column(propModel.Name, System.Data.SqlDbType.Int, identity: true, nullable: false)); case SequenceType.Guid: return(new Column(propModel.Name, System.Data.SqlDbType.UniqueIdentifier)); case SequenceType.Uri: return(new Column(propModel.Name, System.Data.SqlDbType.NVarChar, 128)); default: throw new NotImplementedException(string.Format("SequencePropertyModel of type {0} not implemented.", propModel.SequenceType)); } }