本文整理汇总了C#中ILocation.GetFile方法的典型用法代码示例。如果您正苦于以下问题:C# ILocation.GetFile方法的具体用法?C# ILocation.GetFile怎么用?C# ILocation.GetFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ILocation
的用法示例。
在下文中一共展示了ILocation.GetFile方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetFaces
public IEnumerable<Face> GetFaces(ILocation location)
{
if (this.contacts.Count == 0) // contacts.xml not loaded for some reason
yield break;
var ini = this.iniFileFinder.FindIn(location);
if (ini == null)
yield break;
var parsed = this.parser.Parse(ini);
var rawFaces = from pair in parsed.Items
from face in pair.Value.Faces
select new { FileName = pair.Key, face.ContactHash };
var contactsIndex = parsed.Contacts.ToDictionary(c => c.Hash);
foreach (var rawFace in rawFaces) {
var contact = contactsIndex.GetValueOrDefault(rawFace.ContactHash);
if (contact == null)
continue;
var file = location.GetFile(rawFace.FileName);
if (file == null)
continue;
var key = new ContactKey(contact.UserCode, contact.ID);
var person = this.contacts.GetValueOrDefault(key);
if (person == null)
continue;
yield return new Face(person, file);
}
}
示例2: AlbumIDProvider
public AlbumIDProvider(ILocation dataRoot)
{
this.idMapFile = dataRoot.GetFile("idmap", ActionIfMissing.ReturnAsIs);
this.idMap = new ConcurrentDictionary<string, AlbumDescriptor>(this.LoadMap());
}
示例3: FindIn
public IFile FindIn(ILocation location)
{
return fileNames
.Select(name => location.GetFile(name))
.FirstOrDefault(f => f != null);
}