DB katmanını birim testine Effort framework'ü (sürüm 1.1.4) kullanırken sorun yaşıyorum.Çaba birimi testi Varlık çerçevesi 6.1.3 DB-ilk
Varlık çerçevesi 6.1.3 kullanan bir DB katmanım var ve model veritabanı ilk yaklaşımla oluşturulduğundan, modeli açıklayan bir *.edmx
dosyası var.
public partial class Entities
{
public Entities(DbConnection connection)
: base(connection, true)
{
}
}
basit birim testi aşağıdaki gibidir::
Böyle çabayla birim testleriyle kullanılan ek bir yapıcı ortaya çıkarmak için kısmi sınıfını oluşturduk
private Entities CreateContext()
{
//var connectionString = ConfigurationManager.ConnectionStrings["Entities"].ConnectionString;
//var connection = Effort.EntityConnectionFactory.CreateTransient(connectionString);
//return new Entities(connection as DbConnection);
var connection = Effort.EntityConnectionFactory.CreatePersistent("name=Entities");
var context = new Entities(connection);
return context;
}
[TestMethod]
public void Testing_Effort_Integration()
{
using (var context = CreateContext())
{
var entity = context.TableEntity.FirstOrDefault(i=> i.Id);
Assert.IsNotNull(entity);
}
}
zaman
var connection = Effort.EntityConnectionFactory.CreatePersistent("name=Entities");
: hat için bir istisna atar birim testi{"Sağlayıcı bir ProviderManifest örneği döndürmedi.}} InnerException İleti: {" Depolama sürümü belirlenemedi; Geçerli bir depolama bağlantısı veya bir sürüm ipucu gereklidir. "} Bulduğum
Diğer mesajlar gelen *.edmx
dosyada ProviderManifestToken
niteliğini değiştirmek önerir '' den '2008'. Bu sorunu çözmek gibi görünüyor 2012'de burada ilk kez bağlamını kullanmaya çalışırken ancak bunun yerine benim başka istisna verir: 'tip ait sağlayıcı fabrikası için sağlayıcı adını belirlenemedi
var entity = context.TableEntity.FirstOrDefault(i=> i.Id);
NotSupportedException System.Data.EntityCli ent.EntityProviderFactory'. ADO.NET sağlayıcısının, uygulama yapılandırmasında yüklü veya kayıtlı olduğundan emin olun.
Bu sorunu nasıl çözeceğimizi bilen biri var, bu nedenle Effity'yi varlık çerçevesiyle birlikte kullanabilirim 6.1.3 DB-ilk yaklaşımı?
EF 4 ve EF 5'te DB-ilk yaklaşımıyla oluşturulan birim test DB katmanlarına Effort (sürüm 1.1.4) uygulamasını başarıyla kullanabildim - bu yüzden EF sürümünün olabileceğini düşünüyorum. faiz ...