Okay, I think [UnitOfWork(isTransactional:false)] could be the solution..
I'm using SSO like Klainer described. My problem is, if I try to login with SSO and if user not found, I'll try to login with username and password of the application. I get user from db, but in my controller abp.session.userId is undefined. If I log in directly after start of the application with username and password, userId is set.
Hi, we have similar problems. What is the right way to activate sso without getting thousands of redirects to login form? Thanks in advance
Seems to me, that <a href="~/AbpLocalization/ChangeCulture?cultureName={{language.name}}&returnUrl=@ApplicationPath">{{language.name}}</a> is not working anymore... Have you changed something?
Thanks in advance
Hi, I have implemented a custom db localizationsource which was described here a few month ago. I'm using your Language Menu on top of the page! The currentlanguagemenu object is changing but abp.localization.values is not changing values to my selected language anymore. I think everything is correctly filled. Here is my code of my own dictionary provider:
public IDictionary<string, ILocalizationDictionary> Dictionaries { get; set; }
public void Initialize(string sourceName)
{
var cultures = _cultureService.GetOnlyLanguages().GlobalLanguages.ToList();
var entries = _labelTextService.GetTranslationTexts().TranslationTexts.ToList();
foreach (var culture in cultures)
{
var tempInfo = new CultureInfo(culture.IsoCode);
if(Dictionaries == null)
Dictionaries = new Dictionary<string, ILocalizationDictionary>();
Dictionaries.Add(tempInfo.ToString(),DbLocalizationDictionary.Build(tempInfo, entries));
}
}
Sorry, I think I misspelled my question. I only want to Show the username of the logged in user at the top of my application. And my question is is there an abp.user or something else so that I get the Name of the logged in user. In abp.session there is the id of the user and I can get the username from db, but I thought the username is saved somewhere after logging in
Hi! You are right, the last error occurs, because I have used the entity. But on the server, the login is not shown instead of, this error occurs:
Sorry for my short question. I'm trying to unterstand the error. The error occurs in my debug mode too, but somewhere else.
In my console the following error appears (I have intgegrated module Zero. Something with getting users seems to be the error):
exceptionMessage: "The 'ObjectContent1' type failed to serialize the response body for content type 'application/json; charset=utf-8'." exceptionType: "System.InvalidOperationException" innerException: Object exceptionMessage: "Error getting value from 'CreatorUser' on 'System.Data.Entity.DynamicProxies.User_4730030EBB16241189B87A85A8706EE27908E7C722E1DAFA1C3B46C6AEC5217E'." exceptionType: "Newtonsoft.Json.JsonSerializationException" innerException: Object exceptionMessage: "The ObjectContext instance has been disposed and can no longer be used for operations that require a connection." exceptionType: "System.ObjectDisposedException" message: "An error has occurred." stackTrace: " bei System.Data.Entity.Core.Objects.ObjectContext.get_Connection() ↵ bei System.Data.Entity.Core.Objects.ObjectQuery
1.GetResults(Nullable1 forMergeOption) ↵ bei System.Data.Entity.Core.Objects.ObjectQuery
1.Execute(MergeOption mergeOption)
↵ bei System.Data.Entity.Core.Objects.DataClasses.EntityReference1.Load(MergeOption mergeOption) ↵ bei System.Data.Entity.Core.Objects.DataClasses.RelatedEnd.Load() ↵ bei System.Data.Entity.Core.Objects.DataClasses.RelatedEnd.DeferredLoad() ↵ bei System.Data.Entity.Core.Objects.Internal.LazyLoadBehavior.LoadProperty[TItem](TItem propertyValue, String relationshipName, String targetRoleName, Boolean mustBeNull, Object wrapperObject) ↵ bei System.Data.Entity.Core.Objects.Internal.LazyLoadBehavior.<>c__DisplayClass7
2.<GetInterceptorDelegate>b__2(TProxy proxy, TItem item)
↵ bei System.Data.Entity.DynamicProxies.User_4730030EBB16241189B87A85A8706EE27908E7C722E1DAFA1C3B46C6AEC5217E.get_CreatorUser()
↵ bei GetCreatorUser(Object )
↵ bei Newtonsoft.Json.Serialization.DynamicValueProvider.GetValue(Object target)"
proto: Object
message: "An error has occurred."
Hi, I have downloaded a brand new project from your site and added my classes. Now Login works perfectly, abp.session is now the right one and not the testbase.session. But I did not found my error. I uninstalled every abp project and reinstalled abp. But still error is shown. So I decided to make a new project! Thanks a lot.
I only installed Abp.Zero and Abp.Zero.EntityFramework, but in accountcontroller _userManager.AbpSession is Abp.TestBase.Runtime.Session.TestAbpSession What I'm doing wrong?
Here is the wrong Session:
public UserStore(
IRepository<User, long> userRepository,
IRepository<UserLogin, long> userLoginRepository,
IRepository<UserRole, long> userRoleRepository,
IRepository<Role> roleRepository,
IRepository<UserPermissionSetting, long> userPermissionSettingRepository,
IAbpSession session,
IUnitOfWorkManager unitOfWorkManager)
: base(
userRepository,
userLoginRepository,
userRoleRepository,
roleRepository,
userPermissionSettingRepository,
session,
unitOfWorkManager)
{
}