• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# IAsyncDocumentSession类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中IAsyncDocumentSession的典型用法代码示例。如果您正苦于以下问题:C# IAsyncDocumentSession类的具体用法?C# IAsyncDocumentSession怎么用?C# IAsyncDocumentSession使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



IAsyncDocumentSession类属于命名空间,在下文中一共展示了IAsyncDocumentSession类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: Initialize

		public IEnumerable<Task> Initialize(IAsyncDocumentSession session)
		{
			// those are no longer needed, when we request the
			// Silverlight UI from the server, those indexes will 
			// be created automatically

			//yield return session.Advanced.AsyncDatabaseCommands
			//    .PutIndexAsync<RavenDocumentsByEntityName>(true);

			//yield return session.Advanced.AsyncDatabaseCommands
			//    .PutIndexAsync<RavenCollections>(true);

			SimpleLogger.Start("preloading collection templates");
			var templateProvider = IoC.Get<IDocumentTemplateProvider>();
			var collections = session.Advanced.AsyncDatabaseCommands.GetCollectionsAsync(0, 25);
			yield return collections;

			var preloading  = collections.Result
				.Select(x=>x.Name)
				.Union(Enumeration.All<BuiltinCollectionName>().Select(x => x.Value))
				.Select(templateProvider.GetTemplateFor);

			foreach (var task in preloading)
				yield return task;

			SimpleLogger.End("preloading collection templates");
		}
开发者ID:philiphoy,项目名称:ravendb,代码行数:27,代码来源:DefaultDatabaseInitializer.cs


示例2: FromDbFormat

        internal static async Task<AuthorizationCode> FromDbFormat(StoredAuthorizationCode code, IAsyncDocumentSession s, IScopeStore scopeStore)
        {
            var result = new AuthorizationCode
            {
                CreationTime = code.CreationTime,
                IsOpenId = code.IsOpenId,
                RedirectUri = code.RedirectUri,
                WasConsentShown = code.WasConsentShown,
                Nonce = code.Nonce,
                Client = Data.StoredClient.FromDbFormat(await s.LoadAsync<Data.StoredClient>("clients/" + code.Client)),
                CodeChallenge = code.CodeChallenge,
                CodeChallengeMethod = code.CodeChallengeMethod,
                SessionId = code.SessionId,
                RequestedScopes = await scopeStore.FindScopesAsync(code.RequestedScopes)
            };

            var claimsPrinciple = new ClaimsPrincipal();
            foreach (var id in code.Subject)
            {
                claimsPrinciple.AddIdentity(Data.StoredIdentity.FromDbFormat(id));
            }
            result.Subject = claimsPrinciple;

            return result;
        }
开发者ID:Agrando,项目名称:IdentityServer.Contrib.RavenDB,代码行数:25,代码来源:StoredAuthorizationCode.cs


示例3: DiscoveryModule

		public DiscoveryModule(IAsyncDocumentSession session)
			: base("/api/discovery")
		{
			this.session = session;

			Get["/start"] = parameters =>
			{
				var discoveryClient = new ClusterDiscoveryClient(SenderId, "http://localhost:9020/api/discovery/notify");
				discoveryClient.PublishMyPresenceAsync();
				return "started";
			};

			Post["/notify", true] = async (parameters, ct) =>
			{
				var input = this.Bind<ServerRecord>("Id");

				var server = await session.Query<ServerRecord>().Where(s => s.Url == input.Url).FirstOrDefaultAsync() ?? new ServerRecord();
				this.BindTo(server, "Id");
				await session.StoreAsync(server);

				await HealthMonitorTask.FetchServerDatabases(server, session.Advanced.DocumentStore);

				return "notified";
			};
		}
开发者ID:925coder,项目名称:ravendb,代码行数:25,代码来源:DiscoveryModule.cs


示例4: BlogPostController

 public BlogPostController(IMvcLogger logger, IAsyncDocumentSession documentSession, IConfigurationManager configManager, AkismetClient akismetClient, IMappingEngine mapper)
     : base(logger, documentSession)
 {
     _configManager = configManager;
     _akismetClient = akismetClient;
     _mapper = mapper;
 }
开发者ID:prashantkhandelwal,项目名称:Bloggy,代码行数:7,代码来源:BlogPostController.cs


示例5: AsyncQuery

        public IQueryable<Record> AsyncQuery(IAsyncDocumentSession adb, RecordQueryInputModel input)
        {
            var query = adb.Query<RecordIndex.Result, RecordIndex>()
                .Statistics(out stats);

            return RecordQueryImpl(input, query);
        }
开发者ID:jncc,项目名称:topcat,代码行数:7,代码来源:RecordQueryer.cs


示例6: CreateContextWithAsyncSessionPresent

 public static ContextBag CreateContextWithAsyncSessionPresent(this RavenDBPersistenceTestBase testBase, out IAsyncDocumentSession session)
 {
     var context = new ContextBag();
     session = testBase.OpenAsyncSession();
     context.Set(session);
     return context;
 }
开发者ID:areicher,项目名称:NServiceBus.RavenDB,代码行数:7,代码来源:RavenTestBaseForSagaPersistenceOptions.cs


示例7: Initialize

		public IEnumerable<Task> Initialize(IAsyncDocumentSession session)
		{
			yield return session.Advanced.AsyncDatabaseCommands
				.PutIndexAsync(@"Studio/DocumentCollections",
				               new IndexDefinition
				               	{
				               		Map =
				               			@"from doc in docs
let Name = doc[""@metadata""][""Raven-Entity-Name""]
where Name != null
select new { Name , Count = 1}
",
				               		Reduce =
				               			@"from result in results
group result by result.Name into g
select new { Name = g.Key, Count = g.Sum(x=>x.Count) }"
				               	}, true);


			// preload collection templates
			var templateProvider = IoC.Get<IDocumentTemplateProvider>();
			var collections = session.Advanced.AsyncDatabaseCommands.GetCollectionsAsync(0, 25);
			yield return collections;

			var preloading  = collections.Result
				.Select(x=>x.Name)
				.Union(Enumeration.All<BuiltinCollectionName>().Select(x => x.Value))
				.Select(templateProvider.GetTemplateFor);

			foreach (var task in preloading)
				yield return task;
		}
开发者ID:eldersantos,项目名称:ravendb,代码行数:32,代码来源:DefaultDatabaseInitializer.cs


示例8: CreateAsyncServerClient

		public static async Task<AsyncServerClient> CreateAsyncServerClient(IAsyncDocumentSession session, ServerRecord server, ServerCredentials serverCredentials = null)
		{
			var documentStore = (DocumentStore)session.Advanced.DocumentStore;
			var replicationInformer = new ReplicationInformer(new DocumentConvention
			{
				FailoverBehavior = FailoverBehavior.FailImmediately
			});

			ICredentials credentials = null;
			if (serverCredentials != null)
			{
				credentials = serverCredentials.GetCredentials();
			}
			else if (server.CredentialsId != null)
			{
				serverCredentials = await session.LoadAsync<ServerCredentials>(server.CredentialsId);
				if (serverCredentials == null)
				{
					server.CredentialsId = null;
				}
				else
				{
					credentials = serverCredentials.GetCredentials();
				}
			}

			return new AsyncServerClient(server.Url, documentStore.Conventions, credentials,
										 documentStore.JsonRequestFactory, null, s => replicationInformer, null, new IDocumentConflictListener[0]);
		}
开发者ID:925coder,项目名称:ravendb,代码行数:29,代码来源:ServerHelpers.cs


示例9: SaveEntities

        protected static async Task SaveEntities(IEnumerable<IEntity> entities, IAsyncDocumentSession session)
        {
            foreach (var entity in entities)
            {
                await session.StoreAsync(entity);
            }

            await session.SaveChangesAsync();
        }
开发者ID:jeremy-holt,项目名称:Cornhouse.Factory-Mutran,代码行数:9,代码来源:UnitTestBase.cs


示例10: DoStuff

        public async Task DoStuff(EndpointConfiguration configuration, IAsyncDocumentSession someAsyncSession)
        {
            #region 3to4-ravensharedsession
            Func<IAsyncDocumentSession> sessionFactory = () => someAsyncSession;

            configuration.UsePersistence<RavenDBPersistence>()
                .UseSharedAsyncSession(sessionFactory);
            #endregion
        }
开发者ID:fivec,项目名称:docs.particular.net,代码行数:9,代码来源:SharedSessionEndpointConfig.cs


示例11: DoStuff

        void DoStuff(EndpointConfiguration endpointConfiguration, IAsyncDocumentSession someAsyncSession)
        {
            #region 3to4-ravensharedsession
            Func<IAsyncDocumentSession> sessionFactory = () => someAsyncSession;

            var persistence = endpointConfiguration.UsePersistence<RavenDBPersistence>();
            persistence.UseSharedAsyncSession(sessionFactory);
            #endregion
        }
开发者ID:odelljl,项目名称:docs.particular.net,代码行数:9,代码来源:SharedSessionEndpointConfig.cs


示例12: EnsureSubscriptionsExists

 private async Task EnsureSubscriptionsExists(IAsyncDocumentSession session)
 {
     var subscription = await session.LoadAsync<Subscription>(Subscription.Id);
     if (subscription == null)
     {
         subscription = new Subscription();
         await session.StoreAsync(subscription);
         await session.SaveChangesAsync();
     }
 }
开发者ID:nls75,项目名称:Rebus,代码行数:10,代码来源:RavenDbSubscriptionStorage.cs


示例13: GetKnocksByFeedId

        private async Task<IEnumerable<Knock>> GetKnocksByFeedId(IAsyncDocumentSession session, string feedId)
        {
            if (session == null)
                throw new ArgumentNullException(nameof(session));

            if (String.IsNullOrWhiteSpace(feedId))
                throw new ArgumentNullException(nameof(feedId));

            return await session.Query<Knock, Knock_ByFeed>().Where(knock => knock.FeedId==feedId).ToListAsync();
        }
开发者ID:mkonkolowicz,项目名称:KnockKnock,代码行数:10,代码来源:DataRepository.cs


示例14: CreateCustomer

        public static void CreateCustomer(IAsyncDocumentSession session, string name, AddressOptions addressOptions)
        {
            var entity = new Customer { Name = name };

            if (addressOptions == AddressOptions.Home || addressOptions == AddressOptions.HomeAndBusines)
                entity.Addresses.Add(CreateAddress(AddressOptions.Home));

            if (addressOptions == AddressOptions.Business || addressOptions == AddressOptions.HomeAndBusines)
                entity.Addresses.Add(CreateAddress(AddressOptions.Business));

            session.Store(entity);
        }
开发者ID:plaurin,项目名称:RavenDBDemo,代码行数:12,代码来源:InitRepository.cs


示例15: FirstQuery

        static Task<IList<string>> FirstQuery(IAsyncDocumentSession session)
        {
            var now = DateTime.UtcNow;

            RavenQueryStatistics stats;
            return session.Query<Logfile>()
                .Statistics(out stats)
                .Where(x => x.UploadDate >= now.AddMonths(-1))
                .Select(x => x.Owner)
                .Distinct()
                .Take(1024) // see 
                .ToListAsync();
        }
开发者ID:jrusbatch,项目名称:ravendb,代码行数:13,代码来源:IndexMerging.cs


示例16: CreateUsersAsync

        private static async Task CreateUsersAsync(IAsyncDocumentSession session)
        {
            var user1 = new User {Name = "Jane"};
            user1.OfficesIds.Add("office/1");
            user1.OfficesIds.Add("office/2");

            var user2 = new User {Name = "Bill"};
            user2.OfficesIds.Add("office/1");
            user2.OfficesIds.Add("office/3");

            await session.StoreAsync(user1);
            await session.StoreAsync(user2);
        }
开发者ID:IdanHaim,项目名称:ravendb,代码行数:13,代码来源:RavenDb4583.cs


示例17: ProjectAsync

        /// <summary>
        /// Projects the specified message asynchronously.
        /// </summary>
        /// <param name="session">The Raven session used during projection.</param>
        /// <param name="message">The message to project.</param>
        /// <param name="cancellationToken">The cancellation token.</param>
        /// <returns>
        ///     A <see cref="Task" />.
        /// </returns>
        /// <exception cref="System.ArgumentNullException">Thrown when <paramref name="session"/> or <paramref name="message"/> is <c>null</c>.</exception>
        public async Task ProjectAsync(IAsyncDocumentSession session, object message, CancellationToken cancellationToken)
        {
            if (session == null) throw new ArgumentNullException("session");
            if (message == null) throw new ArgumentNullException("message");

            RavenProjectionHandler[] handlers;
            if (_handlers.TryGetValue(message.GetType(), out handlers))
            {
                foreach (var handler in handlers)
                {
                    await handler.Handler(session, message, cancellationToken);
                }
            }
        }
开发者ID:robvdlv,项目名称:Projac,代码行数:24,代码来源:AsyncRavenProjector.cs


示例18: GetAccountsController

        protected static AccountsController GetAccountsController(IAsyncDocumentSession session)
        {
            var appUserManager = GetApplicationUserManager(session);
            var appRoleManager = GetApplicationRoleManager(session);
            var mockUrlHelper = new Mock<UrlHelper>();
            mockUrlHelper.Setup(c => c.Link(It.IsAny<string>(), It.IsAny<object>())).Returns("http://location");

            var controller = new AccountsController(appUserManager,appRoleManager)
            {
                Url = mockUrlHelper.Object,
                Request = new HttpRequestMessage(),
                Configuration = new HttpConfiguration()
            };

            controller.Configuration.Routes.MapHttpRoute("GetUserById", "api/{controller}/{id}", new {id = RouteParameter.Optional});

            return controller;
        }
开发者ID:jeremy-holt,项目名称:Cornhouse.Factory-Mutran,代码行数:18,代码来源:IdentityManagementUnitTestsBase.cs


示例19: Index

        public async Task<ActionResult> Index(IAsyncDocumentSession asyncSession)
        {
            // Remove when MVC 4 is released (http://forums.asp.net/p/1778103/4880898.aspx/1?Re+Using+an+Async+Action+to+Run+Synchronous+Code)
            await Task.Yield();

            var mike = (await asyncSession.Query<User>().Take(1).ToListAsync()).FirstOrDefault();
            if (mike == null)
            {
                mike = new User {FirstName = "Mike", LastName = "Noonan"};
                asyncSession.Store(mike);
                await asyncSession.SaveChangesAsync();
            }
            if (mike.F1AccessToken == null || mike.PCOAccessToken == null)
            {
                return RedirectToAction("Authenticate", "F1Auth");
            }

            return View();
        }
开发者ID:highwaychurch,项目名称:web,代码行数:19,代码来源:HomeController.cs


示例20: CreateDefaultData

        private static void CreateDefaultData(IAsyncDocumentSession session)
        {
            var role = new ApplicationRole("Admin");
            session.StoreAsync(role);

            var hasher = new PasswordHasher();
            var passwordHash = hasher.HashPassword("admin");
            var superUser = new ApplicationUser("SuperAdmin")
            {
                Email = "[email protected]",
                FirstName = "Super",
                LastName = "Admin",
                UserName = "superadmin",
                PasswordHash = passwordHash,
                EmailConfirmed = true,
                Roles = {"Admin"}
            };

            session.StoreAsync(superUser);

            session.SaveChangesAsync();
        }
开发者ID:jeremy-holt,项目名称:Cornhouse.Factory-Mutran,代码行数:22,代码来源:InitializeRavenDb.cs



注:本文中的IAsyncDocumentSession类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# IAsyncOperation类代码示例发布时间:2022-05-24
下一篇:
C# IAsyncDatabaseCommands类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap