本文整理汇总了C#中Subtext.Framework.Data.DatabaseObjectProvider.GetEntriesByTag方法的典型用法代码示例。如果您正苦于以下问题:C# DatabaseObjectProvider.GetEntriesByTag方法的具体用法?C# DatabaseObjectProvider.GetEntriesByTag怎么用?C# DatabaseObjectProvider.GetEntriesByTag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Subtext.Framework.Data.DatabaseObjectProvider
的用法示例。
在下文中一共展示了DatabaseObjectProvider.GetEntriesByTag方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TagDoesNotRetrieveDraftEntry
public void TagDoesNotRetrieveDraftEntry()
{
string hostname = UnitTestHelper.GenerateUniqueString();
var repository = new DatabaseObjectProvider();
repository.CreateBlogInternal("", "username", "password", hostname, string.Empty, 1);
UnitTestHelper.SetHttpContextWithBlogRequest(hostname, string.Empty);
BlogRequest.Current.Blog = repository.GetBlog(hostname, string.Empty);
Entry entry = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-zero", "body-zero");
entry.IsActive = false;
UnitTestHelper.Create(entry);
var tags = new List<string>(new[] { "Tag1", "Tag2" });
new DatabaseObjectProvider().SetEntryTagList(entry.Id, tags);
ICollection<Entry> entries = repository.GetEntriesByTag(1, "Tag1");
Assert.AreEqual(0, entries.Count, "Should not retrieve draft entry.");
}
示例2: GetEntriesByTagIncludesEnclosure
public void GetEntriesByTagIncludesEnclosure()
{
Entry entryZero = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-zero", "body-zero");
Thread.Sleep(100);
Entry entryOne = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-one", "body-one");
UnitTestHelper.Create(entryZero);
UnitTestHelper.Create(entryOne);
var repository = new DatabaseObjectProvider();
Enclosure enc = UnitTestHelper.BuildEnclosure("Nothing to see here.", "httP://blablabla.com", "audio/mp3",
entryZero.Id, 12345678, true, true);
repository.Create(enc);
var tags = new List<string>(new[] { "Tag1", "Tag2" });
new DatabaseObjectProvider().SetEntryTagList(entryZero.Id, tags);
new DatabaseObjectProvider().SetEntryTagList(entryOne.Id, tags);
ICollection<Entry> entries = repository.GetEntriesByTag(3, "Tag1");
//Test outcome
Assert.AreEqual(2, entries.Count, "Should have retrieved two entries.");
Assert.AreEqual(entries.First().Id, entryOne.Id, "Ordering is off.");
Assert.AreEqual(entries.ElementAt(1).Id, entryZero.Id, "Ordering is off.");
Assert.IsNull(entries.First().Enclosure, "Entry should not have enclosure.");
Assert.IsNotNull(entries.ElementAt(1).Enclosure, "Entry should have enclosure.");
UnitTestHelper.AssertEnclosures(enc, entries.ElementAt(1).Enclosure);
}
示例3: GetEntriesByTagDoesNotIncludeFuturePosts
public void GetEntriesByTagDoesNotIncludeFuturePosts()
{
// Arrange
var repository = new DatabaseObjectProvider();
DateTime now = DateTime.UtcNow;
Entry entryZero = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-zero", "body-zero", null, now);
Entry entryOne = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-one", "body-one", null, now.AddMinutes(1));
Entry entryTwo = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-two", "body-two", null, now.AddMinutes(2));
UnitTestHelper.Create(entryZero);
UnitTestHelper.Create(entryOne);
entryTwo.DatePublishedUtc = DateTime.UtcNow.AddMinutes(20);
UnitTestHelper.Create(entryTwo);
var tags = new List<string>(new[] { "Tag1", "Tag2" });
new DatabaseObjectProvider().SetEntryTagList(entryZero.Id, tags);
new DatabaseObjectProvider().SetEntryTagList(entryOne.Id, tags);
new DatabaseObjectProvider().SetEntryTagList(entryTwo.Id, tags);
// Act
ICollection<Entry> entries = repository.GetEntriesByTag(3, "Tag1");
// Assert
Assert.AreEqual(2, entries.Count, "Expected to find two entries.");
Assert.AreEqual(entries.First().Id, entryOne.Id, "Ordering is off.");
Assert.AreEqual(entries.ElementAt(1).Id, entryZero.Id, "Ordering is off.");
}