Pertanyaan Tidak dapat menyelesaikan simbol 'EnterpriseLibraryContainer'


Saya baru mulai mencoba blok MS Enterprise Library 6.0 Logger yang baru. Ketika saya mencoba membuat LogWriter, saya mendapatkan kesalahan:

Tidak dapat menyelesaikan simbol 'EnterpriseLibraryContainer'

Saya memiliki semua referensi dan penggunaan di tempat, tetapi tidak bisa melewati kesalahan ini.

Apakah ada solusi untuk masalah ini?


8
2018-05-01 17:33


asal


Jawaban:


Pujian kpd Tuhan! Saya baru saja menemukan posting (pada link yang sejak itu menghilang). Begini ceritanya:

Kode bootstrap untuk semua blok telah berubah di versi 6 Perpustakaan Perusahaan. Blok tidak lagi menggunakan Unity untuk mengelola inisialisasi dan konfigurasi, dan setiap blok sekarang termasuk kode bootstrapnya sendiri. Panggilan ke metode EnterpriseLibraryContainer.Current.GetInstance untuk menyelesaikan jenis dari salah satu blok Perpustakaan Perusahaan harus diganti dengan kode bootstrap khusus blok. Misalnya, untuk membuat instance LogWriter berdasarkan konfigurasi di file app.config, Anda sekarang dapat menggunakan kode berikut:

LogWriterFactory logWriterFactory = new LogWriterFactory();
var logWriter = logWriterFactory.Create();

Saya percaya bahwa uraian ini adalah dari "Microsoft Enterprise Library 6 dan Unity 3 Migration Guide".

Saya telah memasukkan kode seperti yang ditunjukkan dan tidak memiliki kompilator yang mengeluh. Sekarang saya dapat terus melihat bagaimana cara kerja penebangan.


8
2018-05-01 17:42



Ya, bahkan saya menghadapi masalah saat membuat objek untuk ValidationFactory menggunakan Ent Lib 6.0. Sekadar info untuk membuat instance dari ValidationFactory lihat kode berikut:

private Validator<Customer> customerValidator;
customerValidator = ValidationFactory.CreateValidator<Customer>();

Ini tidak diperlukan sekarang

EnterpriseLibraryContainer.Current.GetInstance<ValidatorFactory>()

1
2018-06-06 15:25