EntityKey Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Varlık türünün örneği olan bir nesneye dayanıklı başvuru sağlar.
public ref class EntityKey sealed : IEquatable<System::Data::EntityKey ^>
[System.Runtime.Serialization.DataContract(IsReference=true)]
[System.Serializable]
public sealed class EntityKey : IEquatable<System.Data.EntityKey>
[<System.Runtime.Serialization.DataContract(IsReference=true)>]
[<System.Serializable>]
type EntityKey = class
interface IEquatable<EntityKey>
Public NotInheritable Class EntityKey
Implements IEquatable(Of EntityKey)
- Devralma
-
EntityKey
- Öznitelikler
- Uygulamalar
Örnekler
Bu örneklerde oluşturma ve kullanma adımları gösterilmektedir EntityKey.
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
Object entity = null;
IEnumerable<KeyValuePair<string, object>> entityKeyValues =
new KeyValuePair<string, object>[] {
new KeyValuePair<string, object>("SalesOrderID", 43680) };
// Create the key for a specific SalesOrderHeader object.
EntityKey key = new EntityKey("AdventureWorksEntities.SalesOrderHeaders", entityKeyValues);
// Get the object from the context or the persisted store by its key.
if (context.TryGetObjectByKey(key, out entity))
{
Console.WriteLine("The requested " + entity.GetType().FullName +
" object was found");
}
else
{
Console.WriteLine("An object with this key " +
"could not be found.");
}
}
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
try
{
// Create the key that represents the order.
EntityKey orderKey =
new EntityKey("AdventureWorksEntities.SalesOrderHeaders",
"SalesOrderID", orderId);
// Create the stand-in SalesOrderHeader object
// based on the specified SalesOrderID.
SalesOrderHeader order = new SalesOrderHeader();
order.EntityKey = orderKey;
// Assign the ID to the SalesOrderID property to matche the key.
order.SalesOrderID = (int)orderKey.EntityKeyValues[0].Value;
// Attach the stand-in SalesOrderHeader object.
context.SalesOrderHeaders.Attach(order);
// Create a new SalesOrderDetail object.
// You can use the static CreateObjectName method (the Entity Framework
// adds this method to the generated entity types) instead of the new operator:
// SalesOrderDetail.CreateSalesOrderDetail(1, 0, 2, 750, 1, (decimal)2171.2942, 0, 0,
// Guid.NewGuid(), DateTime.Today));
SalesOrderDetail detail = new SalesOrderDetail
{
SalesOrderID = orderId,
SalesOrderDetailID = 0,
OrderQty = 2,
ProductID = 750,
SpecialOfferID = 1,
UnitPrice = (decimal)2171.2942,
UnitPriceDiscount = 0,
LineTotal = 0,
rowguid = Guid.NewGuid(),
ModifiedDate = DateTime.Now
};
order.SalesOrderDetails.Add(detail);
context.SaveChanges();
}
catch (InvalidOperationException)
{
Console.WriteLine("Ensure that the key value matches the value of the object's ID property.");
}
catch (UpdateException)
{
Console.WriteLine("An error has occurred. Ensure that an object with the '{0}' key value exists.",
orderId);
}
}
Açıklamalar
Nesneler EntityKey sabittir; yani, yapıldıktan sonra değiştirilemezler.
Daha fazla bilgi için bkz. Varlık Anahtarları ile Çalışma.
Oluşturucular
EntityKey() |
EntityKey sınıfının yeni bir örneğini başlatır. |
EntityKey(String, IEnumerable<EntityKeyMember>) |
Bir varlık kümesi adı ve bir nesne koleksiyonu ile sınıfının yeni bir IEnumerable<T> örneğini EntityKeyEntityKeyMember başlatır. |
EntityKey(String, IEnumerable<KeyValuePair<String,Object>>) |
Varlık kümesi adı ve genel KeyValuePair bir koleksiyon ile sınıfının yeni bir örneğini EntityKey başlatır. |
EntityKey(String, String, Object) |
Bir varlık kümesi adı ve belirli bir varlık anahtar çifti ile sınıfının yeni bir örneğini EntityKey başlatır. |
Alanlar
EntityNotValidKey |
Başarısız bir TREAT işleminden kaynaklanan bir varlığı tanımlamak basit EntityKey bir işlemdir. |
NoEntitySetKey |
Salt okunur bir varlığın tanımlandığı tekil EntityKey . |
Özellikler
EntityContainerName |
Varlık kapsayıcısının adını alır veya ayarlar. |
EntityKeyValues |
Bu EntityKeyile ilişkili anahtar değerlerini alır veya ayarlar. |
EntitySetName |
Varlık kümesinin adını alır veya ayarlar. |
IsTemporary |
değerinin geçici olup olmadığını EntityKey belirten bir değer alır. |
Yöntemler
Equals(EntityKey) |
Bu örneğin belirtilen EntityKeybir değerine eşit olup olmadığını gösteren bir değer döndürür. |
Equals(Object) |
Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür. |
GetEntitySet(MetadataWorkspace) |
Verilen meta veri çalışma alanından bu varlık anahtarı için varlık kümesini alır. |
GetHashCode() |
Geçerli EntityKey nesne için karma işlevi görür. GetHashCode() karma algoritmaları ve karma tablo gibi veri yapıları için uygundur. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
OnDeserialized(StreamingContext) |
Bir seri durumdan EntityKeyçıkarma için kullanılan yardımcı yöntemi. |
OnDeserializing(StreamingContext) |
Bir seri durumdan EntityKeyçıkarma için kullanılan yardımcı yöntemi. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
İşleçler
Equality(EntityKey, EntityKey) |
İki EntityKey nesneyi karşılaştırır. |
Inequality(EntityKey, EntityKey) |
İki EntityKey nesneyi karşılaştırır. |