Giter VIP home page Giter VIP logo

arda's People

Contributors

allantargino avatar fabriciosanchez avatar fcatae avatar felipeoliveira avatar viniciussouza avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

arda's Issues

WebApp: assembly specified in the dependencies manifest was not found

When run the app in WebApp using DOTNET RUN, it fails with this error:

Project Arda.Common (.NETCoreApp,Version=v1.1) was previously compiled. Skipping compilation.
Project Arda.Main (.NETCoreApp,Version=v1.1) was previously compiled. Skipping compilation.
Error: assembly specified in the dependencies manifest was not found -- 

package: 'Microsoft.Data.OData', version: '5.6.4', path: 'lib/portable-net45+wp8+win8+wpa/es/Microsoft.Data.OData.resources.dll'

This is different of running DOTNET PUBLISH and XCOPY.

Improve the usage telemetry

Eg.

  • Capture custom events for important metrics (need to define important metrics)
  • Use Google Analytics (or similar tool) in our production

Remove email feature

We don't use it - let's remove it.
It will also make it easier for testing... :)

[Kanban] AppointmentRepository.GetAllAppointments does not return UserName

It returns the user unique name, but not the user name.

            var response = (from a in _context.Appointments
                            join w in _context.WorkloadBacklogs on a.AppointmentWorkload.WBID equals w.WBID
                            orderby a.AppointmentDate descending
                            select new AppointmentViewModel
                            {
                                _AppointmentID = a.AppointmentID,
                                _AppointmentWorkloadWBID = a.AppointmentWorkload.WBID,
                                _WorkloadTitle = w.WBTitle,
                                _AppointmentDate = a.AppointmentDate,
                                _AppointmentHoursDispensed = a.AppointmentHoursDispensed,
                                _AppointmentUserUniqueName = a.AppointmentUser.UniqueName
                            }).ToList();

Arda.Main has direct access to Redis

If Arda.Main doesn't have direct access to Redis, the picture is NOT displayed.
This may be related to #16 too. If we configure the Redis server in a separate network, then Arda.Main contacts Redis to retrieve the user picture.

Hidden Exceptions

Hello again,

Crawling through the code I found a considerable number of exceptions handled in a very generic way like

try{ 
//...
}
catch (Exception) { return null; }

In my experience, that can be a big problem to troubleshoot in case of a serious problem.
So, I have two suggestions to soften this problem:

  1. Those exception should probably be logged in someform
  2. The catch scope should be reduced, at least to ApplicationException

Is this viable?

Remove Arda.Common dependency

This is a common dependency for all the projects. It means that each microservice depends on the altest version of this library.
Solution:

  • Remove this library at all
  • Transform this library into a nuget package

Implement a simple Auth to replace Azure AD

Azure AD requires specific configurations (ReplyURL and HTTPS) very challenging for the initial deployment -- see #18. We need a simpler mechanism for Auth to start with. Later the user may configure AzureAD and use the proper credentials.

Cryptographic functions look broken

After downgrading to 1.0.3 LTS, nothing related to crypto is working. For example:

  • Connect to SQL DB
  • Make client HTTPS calls
  • Listen on HTTPS port

However, it is possible to make standard HTTP calls and queries against SQL 2016 (on premise).

[Kanban] AppointmentRepository.GetAllAppointments returns zero TE

            var response = (from a in _context.Appointments
                            join w in _context.WorkloadBacklogs on a.AppointmentWorkload.WBID equals w.WBID
                            orderby a.AppointmentDate descending
                            select new AppointmentViewModel
                            {
                                _AppointmentID = a.AppointmentID,
                                _AppointmentWorkloadWBID = a.AppointmentWorkload.WBID,
                                _WorkloadTitle = w.WBTitle,
                                _AppointmentDate = a.AppointmentDate,
                                _AppointmentHoursDispensed = a.AppointmentHoursDispensed,
                                _AppointmentUserUniqueName = a.AppointmentUser.UniqueName
                            }).ToList();

Handle account with expired password

Receiving error HTTP 500 during the call to /auth/response.
The root cause is that the account has an expired password.
The correct approach was to handle the error, clean up the cookie and force a re-authentication.

[Kanban] AppointmentRepository.GetAllAppointments does not return Comment text

The behavior omits the detailed data, but it is not clear from the API.

            var response = (from a in _context.Appointments
                            join w in _context.WorkloadBacklogs on a.AppointmentWorkload.WBID equals w.WBID
                            orderby a.AppointmentDate descending
                            select new AppointmentViewModel
                            {
                                _AppointmentID = a.AppointmentID,
                                _AppointmentWorkloadWBID = a.AppointmentWorkload.WBID,
                                _WorkloadTitle = w.WBTitle,
                                _AppointmentDate = a.AppointmentDate,
                                _AppointmentHoursDispensed = a.AppointmentHoursDispensed,
                                _AppointmentUserUniqueName = a.AppointmentUser.UniqueName
                            }).ToList();

Calling /api/Workload/ListWorkloadbyUser does many SQL queries (+100)

Query repeating many times for a single API call:

Microsoft.EntityFrameworkCore.Storage.IRelationalCommandBuilderFactory[1]
      Executed DbCommand (166ms) [Parameters=[@__w__WorkloadID_0='?'], CommandType='Text', CommandTimeout='30']
      SELECT [a].[AppointmentHoursDispensed]
      FROM [Appointments] AS [a]
      WHERE [a].[AppointmentWorkloadWBID] = @__w__WorkloadID_0

[Kanban] AppointmentRepository.EditAppointment does not update User or Workload

EditWorkload updates the comment, date and hours logged. However, it can't change the user or the workload either.

                // Update informations of object
                appointmentToBeUpdated.AppointmentComment = appointment._AppointmentComment;
                appointmentToBeUpdated.AppointmentDate = appointment._AppointmentDate;
                appointmentToBeUpdated.AppointmentHoursDispensed = appointment._AppointmentHoursDispensed;
                appointmentToBeUpdated.AppointmentTE = appointment._AppointmentTE;
                //appointmentToBeUpdated.AppointmentUser = user;
                //appointmentToBeUpdated.AppointmentWorkload = workload;
                //appointmentToBeUpdated.AppointmentWorkloadWBID = appointment._AppointmentWorkloadWBID;

We should improve this API to make it clear.

Unable to deploy to Azure WebApp

It fails with this error:

Unhandled Exception: System.AggregateException: One or more errors occurred. (Error -4092 EACCES permission denied) ---> Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvException: Error -4092 EACCES permission denied

   at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.Libuv.tcp_bind(UvTcpHandle handle, SockAddr& addr, Int32 flags)

   at Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvTcpHandle.Bind(ServerAddress address)

   at Microsoft.AspNetCore.Server.Kestrel.Internal.Http.TcpListener.CreateListenSocket()

   at Microsoft.AspNetCore.Server.Kestrel.Internal.Http.Listener.<StartAsync>b__8_0(Object state)

   --- End of inner exception stack trace ---

   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)

   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)

   at System.Threading.Tasks.Task.Wait()

   at Microsoft.AspNetCore.Server.Kestrel.Internal.KestrelEngine.CreateServer(ServerAddress address)

   at Microsoft.AspNetCore.Server.Kestrel.KestrelServer.Start[TContext](IHttpApplication`1 application)

   at Microsoft.AspNetCore.Hosting.Internal.WebHost.Start()

   at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host, CancellationToken token, String shutdownMessage)

   at Microsoft.AspNetCore.Hosting.WebHostExtensions.Run(IWebHost host)

   at Arda.Kanban.Program.Main(String[] args) in D:\home\site\repository\src\Arda.Kanban\Program.cs:line 10

Initial deployment is too difficult

It is hard to set up all the services for the first time.
In order to make it easier, we could improve:

  • Use Docker containers
  • Deploy with docker-compose
  • Define an automatic mechanism for Azure

Improvements

  • Appointment/My - The appointment list is not handling the field "Appointment date" as a Date to order making it dificult to keep on track the last appointment logged.

  • Fix - User Picture from Azure Active Directory is not being used

  • Coding Logging - Handle exception with Applicaiton Insights

[Kanban] WorkloadRepository.EditWorkload deletes technology, metrics and users

If EditWorkload receives an EntityFramework model instead of a simple model, then the technology, metrics and users are deleted.

The problem is in this logic:

            _context.Files.RemoveRange(files);
            _context.WorkloadBacklogMetrics.RemoveRange(metrics);
            _context.WorkloadBacklogTechnologies.RemoveRange(technologies);
            _context.WorkloadBacklogUsers.RemoveRange(users);
            _context.SaveChanges();

This deletes the data prior to inserting the data

            var metricList = new List<WorkloadBacklogMetric>();
            foreach (var mId in workload.WBMetrics)
            {
                var metric = _context.Metrics.First(m => m.MetricID == mId);
                metricList.Add(new WorkloadBacklogMetric()
                {
                    Metric = metric
                });
            }

The problem is that when the workload is an EF model, then there is no data to insert it later.

Can't find the proper .NET Core Version

Hi,
I am trying to do a first go in the project, but I am facing a problem to open it in Visual Studio Community 2015 in Windows 10.

The problem is pretty straightforward, but I can't find a solution. The error presented just after I open the .sln file is
image

Problem is, I could only find the ".NET Core SDK version 1.0.0-preview2.1-003155" for Linux machines...

The obvious solution would be to change the SDK version, but then I would not be compliant with the current version you guys are using.

Am I doing something wrong?

Kanban.ListWorkloadsByUser is broken after upgrading to NetCore 1.1

Exception:

Microsoft.EntityFrameworkCore.Query.Internal.SqlServerQueryCompilationContextFactory[1]
      An exception occurred in the database while iterating the results of a query.
      System.InvalidOperationException: Sequence contains no elements
         at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
         at lambda_method(Closure , ValueBuffer )
         at System.Linq.Enumerable.<JoinIterator>d__80`4.MoveNext()
         at System.Linq.Enumerable.<JoinIterator>d__80`4.MoveNext()
         at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
         at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()
System.InvalidOperationException: Sequence contains no elements
   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
   at lambda_method(Closure , ValueBuffer )
   at System.Linq.Enumerable.<JoinIterator>d__80`4.MoveNext()
   at System.Linq.Enumerable.<JoinIterator>d__80`4.MoveNext()
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()

Visual Studio 2017 migration broke integration tests

Visual Studio 2017 migration broke integration tests - it causes problem in Entity Framework

Error Message:
 System.InvalidOperationException : No value provided for required parameter '_outer_WBID'.
Stack Trace:
   at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.CreateCommand(IRelationalConnection connection, IReadOnlyDictionary`2 parameterValues)
   at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.Execute(IRelationalConnection connection, String executeMethod, IReadOnlyDictionary`2 parameterValues, Boolean closeConnection)
   at Microsoft.EntityFrameworkCore.Storage.Internal.RelationalCommand.ExecuteReader(IRelationalConnection connection, IReadOnlyDictionary`2 parameterValues)
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable.Enumerator.BufferlessMoveNext(Boolean buffer)
   at Microsoft.EntityFrameworkCore.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](Func`2 operation, Func`2 verifySucceeded, TState state)

   at Microsoft.EntityFrameworkCore.Query.QueryMethodProvider.<_ShapedQuery>d__3`1.MoveNext()
   at System.Linq.Enumerable.SelectEnumerableIterator`2.MoveNext()
   at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Arda.Kanban.Repositories.WorkloadRepository.GetWorkloadsByUser(String uniqueName) in C:\src\Arda\src\Arda.Kanban\Repositories\WorkloadRepository.cs:line 327
   at IntegrationTests.Workload.<>c__DisplayClass5_0.<Workload_GetWorkloadsByUser>b__0(WorkloadViewModel[] list, KanbanContext ctx) in C:\src\Arda\test\IntegrationTests.Arda.Kanban.Repositories\Repositories\Workload.cs:line 112
   at IntegrationTests.ArdaTestMgr.Validate[R](ISupportSnapshot`1 testClass, String testName, Func`3 testFunction, String member) in C:\src\Arda\test\IntegrationTests.Arda.Kanban.Repositories\ArdaTestManager\ArdaTestMgr.cs:line 92
   at IntegrationTests.Workload.Workload_GetWorkloadsByUser() in C:\src\Arda\test\IntegrationTests.Arda.Kanban.Repositories\Repositories\Workload.cs:line 108

Remove the Identity and Claims strong dependency

There is a strong dependency of User identity and Claims throughout the code. We should encapsulate this code into a model class. As a result, it will indirectly help #23.

Find all "User.Claims", Subfolders, Find Results 1, Entire Solution, ""
  C:\src\Arda\src\Arda.Common\Middlewares\SecurityMainMiddleware.cs(35):                var uniqueName = context.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AccountController.cs(58):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\ActivityController.cs(22):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(38):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(65):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(94):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(126):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(153):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(180):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\AppointmentController.cs(212):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\DashboardController.cs(26):                var user = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(26):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(60):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(93):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(130):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(152):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\FiscalYearController.cs(187):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(37):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(75):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(115):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(145):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(163):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(195):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(217):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\MetricController.cs(236):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\TechnologyController.cs(22):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(79):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(102):                var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(122):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(139):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(170):            var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(200):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(220):                var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(240):                var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(260):                var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(279):                var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\UsersController.cs(295):                    var uniqueName = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(26):            var loggedUser = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(63):            var loggedUser = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(101):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(136):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(181):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(197):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Controllers\WorkloadController.cs(215):            var uniqueName = HttpContext.User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Views\Appointment\Add.cshtml(41):                            <input type="text" class="form-control" id="_AppointmentUserName" name="_AppointmentUserName" value="@User.Claims.First(claim => claim.Type == "name").Value" readonly />
  C:\src\Arda\src\Arda.Main\Views\Appointment\Add.cshtml(42):                            <input type="hidden" id="_AppointmentUserUniqueName" name="_AppointmentUserUniqueName" value="@User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value" />
  C:\src\Arda\src\Arda.Main\Views\Appointment\Details.cshtml(42):                            <input type="text" class="form-control" id="_AppointmentUserName" name="_AppointmentUserName" value="@User.Claims.First(claim => claim.Type == "name").Value" readonly />
  C:\src\Arda\src\Arda.Main\Views\Appointment\Edit.cshtml(32):                            <input type="text" class="form-control" id="_AppointmentUserName" name="_AppointmentUserName" value="@User.Claims.First(claim => claim.Type == "name").Value" readonly />
  C:\src\Arda\src\Arda.Main\Views\Dashboard\Index.cshtml(41):        var user = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Views\Shared\_PartialDynamicMenu.cshtml(19):                var user = User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value;
  C:\src\Arda\src\Arda.Main\Views\Shared\_PartialDynamicMenu.cshtml(67):                            var username = '@User.Claims.First(claim => claim.Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name").Value';
  C:\src\Arda\src\Arda.Main\Views\Shared\_PartialDynamicMenu.cshtml(79):                Welcome, <strong>@User.Claims.First(claim => claim.Type == "name").Value</strong>
  Matching lines: 52    Matching files: 15    Total files searched: 728

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.