幸福框架 可擴充套件的 動態的 萬能的 編號生成器

2021-09-25 03:26:17 字數 1961 閱讀 4099

今天重點介紹一下如何使用。

像如下這些規則,非常容易支援,如:

測試**

1

using

system;

2using

system.collections.generic;

3using

microsoft.visualstudio.testtools.unittesting;

4using

system.io;56

using

7using89

namespace

1023

24var interceptor = new

coderuleinterceptor();

2526

interceptor

27 .registerinterceptor(new

datetimecodegeneratorinterceptor())

28 .registerinterceptor(new

literalcodegeneratorinterceptor())

29 .registerinterceptor(new seedcodegeneratorinterceptor(new

fileseedstore()));

3031

var generator = interceptor.intercept("

字首---《日期:yyyymmdd>---中綴---《種子:銷售訂單》---字尾");

3233

assert.isnotnull(generator);

3435

36 assert.areequal("

字首---20130705---中綴---00001---字尾

", generator.generate(new

generatecontext()));

37 assert.areequal("

字首---20130705---中綴---00002---字尾

", generator.generate(new

generatecontext()));

38 assert.areequal("

字首---20130705---中綴---00003---字尾

", generator.generate(new

generatecontext()));39}

40}41 }

問:種子的生成能保證唯一性嗎?答:是的,在併發情況下也能保證唯一。

問:為什麼一定要配置規則,解釋執行?答:這是面向產品級別的專案,如果是一般的專案,直接用種子倉儲就行了,**如下:

1

using

system;

2using

microsoft.visualstudio.testtools.unittesting;

3using

system.io;45

using67

namespace821

22var seedstore = new

fileseedstore();

2324 assert.areequal(1

, seedstore.nextseed(seedkey));

25 assert.areequal(2

, seedstore.nextseed(seedkey));

26 assert.areequal(3

, seedstore.nextseed(seedkey));27}

28}29 }

這種規則生成器,我在產品和專案中都有用過,新入門的朋友可以直接使用,高手要多提些意見。

mysql萬能 Mysql的萬能優化方法

在命令列執行 1.檢視優化器狀態 show variable like optimizer trace 2.會話級別臨時開啟 set session optimizer trace enabled on end markers in json on 3.設定優化器追蹤的記憶體大小 set optim...

萬能的應用商店 WiFi萬能助手

許可權列表 wifi萬能助手 獲取定位 允許應用通過網路或衛星對裝置進行定位 獲取額外的位置資訊提供程式命令 獲取額外的位置資訊提供程式命令。惡意應用程式可藉此干擾 gps 或其他位置源的正常工作。檢視網路狀態 允許應用程式檢視所有網路的狀態。開關wlan 允許應用開啟或關閉wlan 作為帳戶身份驗...

萬能的指標

void指標 void指標一般被稱為通用指標或泛指針,它是c語言關於 純粹位址 的一種約定。void指標指向某個物件,但該物件不屬於任何型別。請看下例。int ip void p 在上例中,ip指向乙個整型值,而p指向的物件不屬於任何型別。在c語言中,任何時候都可以用其他型別的指標來代替void指標...