mirror of
				https://github.com/zoriya/Kyoo.git
				synced 2025-11-04 03:27:14 -05:00 
			
		
		
		
	Fixing local repository management of already loaded entities
This commit is contained in:
		
							parent
							
								
									cdf5acbbe9
								
							
						
					
					
						commit
						6958745915
					
				@ -277,22 +277,28 @@ namespace Kyoo.Controllers
 | 
			
		||||
 | 
			
		||||
		Task<T> IRepository<T>.Create(T item)
 | 
			
		||||
		{
 | 
			
		||||
			TInternal obj = new TInternal();
 | 
			
		||||
			TInternal obj = item as TInternal ?? new TInternal();
 | 
			
		||||
			if (!(item is TInternal))
 | 
			
		||||
				Utility.Assign(obj, item);
 | 
			
		||||
			
 | 
			
		||||
			return Create(obj).Cast<T>()
 | 
			
		||||
				.Then(x => item.ID = x.ID);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		Task<T> IRepository<T>.CreateIfNotExists(T item)
 | 
			
		||||
		{
 | 
			
		||||
			TInternal obj = new TInternal();
 | 
			
		||||
			TInternal obj = item as TInternal ?? new TInternal();
 | 
			
		||||
			if (!(item is TInternal))
 | 
			
		||||
				Utility.Assign(obj, item);
 | 
			
		||||
			
 | 
			
		||||
			return CreateIfNotExists(obj).Cast<T>()
 | 
			
		||||
				.Then(x => item.ID = x.ID);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		public Task<T> Edit(T edited, bool resetOld)
 | 
			
		||||
		{
 | 
			
		||||
			if (edited is TInternal intern)
 | 
			
		||||
				return Edit(intern, resetOld).Cast<T>();
 | 
			
		||||
			TInternal obj = new TInternal();
 | 
			
		||||
			Utility.Assign(obj, edited);
 | 
			
		||||
			return base.Edit(obj, resetOld).Cast<T>();
 | 
			
		||||
@ -302,6 +308,8 @@ namespace Kyoo.Controllers
 | 
			
		||||
 | 
			
		||||
		Task IRepository<T>.Delete(T obj)
 | 
			
		||||
		{
 | 
			
		||||
			if (obj is TInternal intern)
 | 
			
		||||
				return Delete(intern);
 | 
			
		||||
			TInternal item = new TInternal();
 | 
			
		||||
			Utility.Assign(item, obj);
 | 
			
		||||
			return Delete(item);
 | 
			
		||||
 | 
			
		||||
@ -1 +1 @@
 | 
			
		||||
Subproject commit 735a0e6a1a7ae2653de45b47adc823275a46478d
 | 
			
		||||
Subproject commit 0f3faa21fad37b2ed39317d58aa3e295fa1c3a41
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user