Veritabanını açığa çıkarmak için bir WCF Veri Hizmeti geliştiriyorum. Ben masalardan birinde (o 'Foo' olarak adlandırdığımız) erişim sağlamak istiyoruz, bu yüzden benim DatabaseService.svc.cs
arasında InitializeService
yönteminde bu koyun: hizmet başlatıldığındaWCF Veri Hizmetleri hatası "Belirtilen ad 'Foo' varlık kümelerinde bulunamadı"
config.SetEntitySetAccessRule("Foo", EntitySetRights.AllRead);
Ancak, bir ArgumentException
atar ileti "Foo 'adı verilen varlık kümesinde bulunamadı."
tablo bu ad, söz ve yazım doğru ile .edmx dosyasında kesinlikle. Böyle, .Designer.cs
dosyada da var:
public class FooDatabaseService : DataService<FooDBEntities>
Evet, kombinasyonları 'FooDB.Foo',' FooDB.dbo.Foo', 'FooDBModel.Foo' ve' FooDBEntities.Foo' denedim. –
Kodda kullanılan gerçek ad alanlarından herhangi biri (NamespaceName = ""). Ayrıca, modeliniz ve hizmetiniz aynı projede mi? – CodingGorilla
Evet, bunlar koddaki ad alanlarıdır. .svc ve .edmx'in ikisi de aynı projede (dll) ve ayrı bir Windows Hizmet projesinde "DataServiceHost" ile barındırılıyor. –