public async Task UpdateCustomGetterGrainState()
        {
            var entity = new EntityWithGuidKey();

            Internal.Utils.StoreGrainState(_serviceProvider, entity);
            entity.Title += "UPDATED";
            var state = new GrainStateWrapper <EntityWithGuidKey>()
            {
                Value = entity
            };
            var grainState = new GrainState <GrainStateWrapper <EntityWithGuidKey> >()
            {
                State = state
            };

            TestGrainReference grainRef
                = TestGrainReference.Create(entity);

            await _storage.WriteStateAsync(typeof(GrainWithCustomStateGuidKey).FullName,
                                           grainRef,
                                           grainState
                                           );

            Internal.Utils.AssertEntityEqualityVsDb(
                _serviceProvider, grainState.State?.Value);
        }
コード例 #2
0
        public async Task ReadCustomGetterGrainStateNoPreCompile()
        {
            var entity = new EntityWithGuidKey();

            Internal.Utils.StoreGrainState(_serviceProvider, entity);

            var state = new GrainStateWrapper <EntityWithGuidKey>()
            {
                Value = entity
            };

            var grainState = new TestGrainState <GrainStateWrapper <EntityWithGuidKey> >()
            {
                State = state
            };

            TestGrainReference grainRef
                = TestGrainReference.Create(entity);

            grainState.State = null;

            await _storage.ReadStateAsync(typeof(GrainWithCustomStateGuidKeyNoPreCompile).FullName,
                                          grainRef,
                                          grainState
                                          );

            Internal.Utils.AssertEntityEqualityVsDb(
                _serviceProvider,
                grainState.State?.Value);
        }