OpenAuth.Net/OpenAuth.Repository/RelevanceRepository.cs

54 lines
1.6 KiB
C#
Raw Normal View History

using OpenAuth.Domain;
2015-11-30 11:58:18 +08:00
using OpenAuth.Domain.Interface;
using System;
using System.Linq;
2015-11-30 11:58:18 +08:00
namespace OpenAuth.Repository
{
public class RelevanceRepository : BaseRepository<Relevance>, IRelevanceRepository
2015-11-30 11:58:18 +08:00
{
public void DeleteBy(string key, params int[] firstIds)
2015-11-30 11:58:18 +08:00
{
Delete(u => firstIds.Contains(u.FirstId) && u.Key == key);
}
2016-04-13 14:56:34 +08:00
/// <summary>
/// 删除关联
/// </summary>
/// <param name="key">关联标识</param>
/// <param name="idMaps">关联的&lt;firstId, secondId&gt;数组</param>
public void DeleteBy(string key, ILookup<int, int> idMaps)
{
foreach (var sameVals in idMaps)
{
foreach (var value in sameVals)
{
Delete(u =>u.Key == key && u.FirstId == sameVals.Key && u.SecondId == value);
}
}
}
/// <summary>
/// 添加新的关联
/// </summary>
/// <param name="key">关联标识</param>
/// <param name="idMaps">关联的&lt;firstId, secondId&gt;数组</param>
public void AddRelevance(string key, ILookup<int, int> idMaps)
2015-11-30 11:58:18 +08:00
{
foreach (var sameVals in idMaps)
2015-11-30 11:58:18 +08:00
{
foreach (var value in sameVals)
2015-11-30 11:58:18 +08:00
{
Add(new Relevance
{
Key = key,
FirstId = sameVals.Key,
SecondId = value,
OperateTime = DateTime.Now
});
}
2015-11-30 11:58:18 +08:00
}
Save();
}
}
}