小技巧:NHibernate做完一個操作(事務層級)如何Callback?

  public interface ITransaction : IDisposable { bool IsActive { get; } bool WasCommitted { get; } bool WasRolledBack { get; } void Begin(); void Begin(IsolationLevel isolationLevel); void Commit();

分享一個自己寫的”弱引用“+”延遲初始化“的對象封裝類

 public class WeakLazy<T> : IDisposable { private readonly WeakReference _weakReference; private T _instance; private Func<T> _valueFactory; private readonly bool _isWeak; private readonly bool

重構到擴充方法(1):讓集合操作更方便

1. 擷取數組倒數N個 public static IEnumerable<T> GetFromEnd<T>(this T[] array, int count) { for (int i = array.Length - 1; i > array.Length - 1 - count; i--) { yield return array[i]; }

如何用最簡單的方法讓WPF程式支援多國語言,並且語言文字使用者可以隨意編輯?

支援多語言的核心無非是,切換Applicaion層級的ResourceDictionary 語言檔案隨意編輯,無非是在程式啟動時,載入一下某個資源檔而已。 為了支援介面使用多語言,我們自己定義了一個Resource擴充標記。 同時,為了防止,使用者誤將語言資源刪除,而引起介面無任何文字的情況,我們內部定義了一個預設的資源檔,這樣就不會沒有顯示了。 資源檔的目錄結構:Languages目錄下有Default.xaml, en-US.xaml,

MEF學習筆記(2)——建立MEF

建立MEF包含CompositionContainer的執行個體,給它增加Composable part(包含程式自己本身),然後組合。 以下是建立的順序 建立宿主類。在樣本中,我們使用命令列程式,所以宿主在Program類。增加System.ComponentModel.Composition引用。增加如下命名空間:using System.Component.Composition增加Compose()方法,建立container執行個體,然後組裝。增加Run()方法,它調用Compose(

AllComboBox——帶有(All Options)選項的WPF ComboBox

  感冒中,寫的比較亂,自己看的懂撒。   在實際工作中,會遇到一個“全選”的Combobox,但是資料來源是沒有"All"的,這個要怎麼實現呢?    原先設計師是用一個個new ComboboxItem,然後再插入一個All ComboBoxItem到ComboBox.Items集合屬性裡面。但是這樣做,無法支援Binding,對MVVM不友好。為什麼不友好?因為你用itemsSource = {Binding

如何給預存程序,傳一個數組參數?

接到這個需求,本以為簡單。誰知道SQL不支援數組。於是想用','分割傳進去,哪知道SQL居然沒有split()函數,還得用substring & charindex,坑爹啊。方法一 分割例:通過SQL Server預存程序傳送數組參數刪除多條記錄eg. ID 值為'1,2,3' 以下預存程序就是刪除表中id號為1,2,3的記錄:CREATE PROCEDURE DeleteNews     @ID nvarchar(500) as     DECLARE @PointerPrev

讓Linq的Dictinct更給力

Linq的Distinct含義就是去除重複項,那麼如何定義重複項呢?微軟給出了預設的方案:給出一個IEqualityComparer<T>的執行個體。如果你不傳IEqualityComparer<T>的執行個體,那麼預設是比較引用。這個方案很不方便,詳見:Linq的Distinct太不給力了鶴衝天 給出了他的方案,c# 擴充方法奇思妙用基礎篇八:Distinct

MEF學習筆記(1)——什麼是MEF?

(英文原文:http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home) 什麼是MEF?  Managed Extensibility

精挑細選部落格文章

搜集一些部落格好文,這些都是精品文章,有空一定要讀的!陸續更新……比較懶,等多了再分類。演算法:編程小練習:拆分自然數老趙的自然數分解--少俠之非遞迴解自然數拆分拆分自然數:純while實現 (Part 1 - 思路)拆分自然數:純while實現 (Part 2 - 實現)人文:網路正在改變我們得思維?我在南大的七年暗時間不是書評

利用微軟企業庫輕鬆給你的WPF程式加上異常處理和日誌記錄

攔截異常並用企業庫處理: private void AttachUnhandledException() {    //這個異常一樣要加,否則如果後台線程發生異常,DispatherUnhandledException是撲捉不到的。 AppDomain.CurrentDomain.UnhandledException += (sender, args) => { Exception ex = new

“Loads are not reorderd with other loads” is a FACT!!

對於多線程編程的難度,再充分的心裡準備也許都是不夠的。前一段時間一直在整理一些有關多線程編程的內容(一個對多線程演算法庫編寫過程中的經驗積累)。而在前天,一篇來自於Microsoft 的PFX的Joe的博文驚現:"Loads cannot pass other loads" is a ~myth,著實讓人驚出了一身冷汗。 討論集中在了以下的例子上:     P0          P1    ==========  ==========    X = 1;      Y = 1;    R0 =

.net 4.0 學習筆記(4)—— 線程基礎(下)

使用專用線程來非同步執行計算限制的操作   在這一節,我將展示如何建立線程和如何使用非同步來執行計算限制的操作。在這開始之前,我強調你要避免使用我給你展示的這種技術。作為代替,你應該盡量使用CLR線程池來非同步執行計算限制的操作,我會在26章“計算限制的非同步模式”來詳細闡述。  然而,有一些情況你可能需要明確建立線程來執行一個特殊的計算限制的操作。典型的,如果你執行代碼需要有特殊狀態的線程,並與線程池線程不同,你可以建立一個專用線程。例如,在以下條件為真是明確建立你自己的線程:你需要線程允許一

Interface和Object的關係

    在.NET世界裡,我們常常聽到的一句話莫過於“System.Object是一切類型的根,是所有類型的父類”,以至於我在《你必須知道的.NET》8.1節 以“萬物歸宗:System.Object”這樣的title為System.Object授予至高榮譽。所以,基於這樣的觀點就有了下面這句“介面是否也繼承於System.Object?”,事實上這正是今天在技術群裡小小討論的一個插曲。   

雲智慧系統

  雲智慧系統:百度知道的形式 + SNS元素 + 搜尋引擎 + 人工智慧 + 資料採礦 + 移動終端 + 語音合成 = 企業級知識庫,老闆和員工的智囊。  用了雲智慧系統,老闆不再擔心人員流失,因為你們的知識還在,你設計的產品文檔,構思,各種經曆,各種成長,都在雲智慧系統中。新人通過雲智慧系統,很快熟悉業務產品。可以站在前人的肩膀上,持續創新。  雲智慧記錄了所有員工的曆史,彙集全員的智慧,讓企業不斷積累,不斷良性迴圈。通過最新一代的語音合成系統,隨時向雲智慧提問,雲智慧通過雲端運算,雲分析,

.net裡為什麼盡量避免Volatile關鍵字

需要應用的情境往往是多線程,多,是指多於2個。應用情境很重要,如果那volatile修飾一個用於累加的計數器,那是很糟糕的,它本身不是用來設計做這個。在.net中應該去找Interlocked幫忙。volatile的作用是它可以保證線程之間的可見度(可以理解為1號線程寫完了後2號負責讀的線程是可見的,所以2號讀線程始終可以得到最新的值)和指令的順序性(專治亂序問題,weak ordering) volatile與指令序列有著孽緣,比如說對兩個變數的兩條指派陳述式並不一定是按照這個順序來執行的。

.net 4.0 學習筆記(3)—— 線程基礎(上)

  翻譯自《CLR via C#, Third Edition》   本章,我將介紹關於線程的基本概念,讓大家有個概念,好使用線程。我將解釋為什麼微軟的Windows帶來線程的概念、CPU發展趨勢、CLR線程和Windows線程的關係、使用線程的系統開銷、Windows怎樣調度線程,.net

二進位與布爾數組

  電腦只認二進位。一個整形int是32位二進位,我們做許可權,做儲存,經常會遇到如何把一個int轉換成二進位或者bool[],下面就是二進位和布爾數組的互轉。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> public static bool[] ToBooleanArray(this int integer) {

.net 4.0 學習筆記(2)—— CLR和BCL的更新

更新眾多,所以只選擇記錄一些感興趣的更新。一、 異常處理  在System.Runtime.ExceptionServices命名空間下。  1. CorruptedStateExceptions  很多人這樣寫異常處理:try{ //do something that may fail throw new Exception();}catch(Exception e){

大型網站架構的演變曆程

最開始,由於某些想法,於是在互連網上搭建了一個網站,這個時候甚至有可能主機都是租借的,但由於這篇文章我們只關注架構的演變曆程,因此就假設這個時候已經是託管了一台主機,並且有一定的頻寬了,這個時候由於網站具備了一定的特色,吸引了部分人訪問,逐漸你發現系統的壓力越來越高,響應速度越來越慢,而這個時候比較明顯的是資料庫和應用互相影響,應用出問題了,資料庫也很容易出現問題,而資料庫出問題的時候,應用也容易出問題,於是進入了第一步演變階段:將應用和資料庫從物理上分離,變成了兩台機器,這個時候技術上沒有什麼

總頁數: 61357 1 .... 4000 4001 4002 4003 4004 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.