Base solution for your next web application

Activities of "justinp"

Question

I wanted to evaluate the public website that is included in the application to determine how much to reuse and how much to rewrite. What I really want to understand is:

  • What is included?
  • If it integrates with the API/UI solutions. If yes, how?
  • How do we get and configure the website if we are using the CORE + Angular solution? I understand from what is written on the aspnetzero website that it is "ASP.NET MVC based application for your public web site."

Thanks

Hello,

I am trying to configure my SMTP settings in the application to send using our support@company.com mailbox. I tried using putting my O365 settings into the host configuration, but get the following error in the audit logs when I try to send a test email:

System.Net.Mail.SmtpException: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.57 SMTP; Client was not authenticated to send anonymous mail during MAIL FROM

I decided to build a small console app using the MailKit NuGet package to prove that the settings worked, and it does work fine. Here are the settings I'm putting in: Default from (sender) email address: support@company.com Default from (sender) display name: Company Support SMTP host: smtp.office365.com SMTP port: 587 Use SSL: false Use default credentials: false Domain name: company.com Username: myemail@company.com Password: password

The code to send the email is the following:

var message = new MimeMessage();
            message.From.Add(new MailboxAddress("Company Support", "[email protected]"));
            message.To.Add(new MailboxAddress("Me", "[email protected]"));
            message.Subject = "Hello World - A mail from ASPNET Core";
            message.Body = new TextPart("plain")
            {
                Text = "Hello World - A mail from ASPNET Core"
            };

            using (var client = new SmtpClient())
            {
                try
                {
                    client.Connect("smtp.office365.com", 587, false);
                    // Note: since we don't have an OAuth2 token, disable 	
                    // client.AuthenticationMechanisms.Remove("XOAUTH2");
                    // Note: the XOAUTH2 authentication mechanism.     
                    client.Authenticate("[email protected]", "password");
                    client.Send(message);
                    client.Disconnect(true);
                  }

This sends a test email just fine.

Does anyone have their application sending email through their O365 Exchange? Is there a way to get this working in ABP? Do I need to overwrite the current ABP mail implementation?

I have my application (Core + Angular) hosted in Azure, and have for a couple weeks. I have been following the step-by-step development tutorial to learn how to work with ABP and published to Azure. It works great, but only in Chrome. I went to show someone on my phone (mobile Chrome), and got an error. Here is a picture of the app not running in IE (left) and running fine Chrome (right).

Any ideas what could cause this? Any ideas how to find the issue?

I'm following along the step-by-step tutorial (Core + Angular) and get to the point where you add a phone number. However, I get an error from the server.

Failed to load resource: the server responded with a status of 500 (Internal Server Error)
(unknown) ERROR: 
(unknown) Object
code:0
details:null
message:"An internal error occurred during your request!"
validationErrors:null

I set a break point and walk through the code no error is thrown by the server, but it fails at the equivalent line:

person.Phones.Add(phone);

If I set a breakpoint, it never reaches the next line:

await CurrentUnitOfWork.SaveChangesAsync();

When I use Swagger UI, my break point is never hit and I see the following response:

Response Body
{
  "result": null,
  "targetUrl": null,
  "success": false,
  "error": {
    "code": 0,
    "message": "**Current user did not login to the application!**",
    "details": null,
    "validationErrors": null
  },
  "unAuthorizedRequest": true,
  "__abp": true
}

Is there a way to test the API, or any reason that it would be failing without throwing an error? Does this have something to do with the method being Async?

Any help solving the issue or help to improve debugging is much appreciated.

  1. Downloaded v3.2.
  2. Extracted and opened api .sln.
  3. Tried to restore packages, but get this error:

Version conflict detected for xunit.extensibility.core. ApolloEHR.Tests (>= 1.0.0) -> xunit (>= 2.2.0-beta5-build3474) -> xunit.core (>= 2.2.0-beta5-build3474) -> xunit.extensibility.core (>= 2.2.0-beta5-build3474) ApolloEHR.Tests (>= 1.0.0) -> xunit.extensibility.execution (>= 2.2.0-beta2-build3300) -> xunit.extensibility.core (>= 2.2.0-beta2-build3300).

Question

I paid $850 USD for this product that is supposed to help speed up development. However, I spent the first week resolving an issue with the Angular UI to get the project to run with the release candidate Angular CLI (nothing suggested in the forum or sending in the code helped). Now a new version comes out (3.2) that is supposed to address exactly what I solved (working with the latest Angular CLI). No one told me that it was being fixed in the next release which would be out in days. That would have saved me a lot of effort. Solving the issue was a waste of my time when I could have focused on other things. That is bad customer service and support.

Now, I download version 3.2 and the API project won't even run. I've got all kinds of issues (posted throughout this forum, listed below) and something very simple, like running the EF commands to get the project to deploy the databases doesn't work.

  • Version conflict detected for xunit.extensibility.core. ...
  • Version 3.2 EF Error: Could not find file project.json
  • InvalidOperationException: Could not find 'UserSecretsIdAttr
  • Github project is missing...
  • Migrator Project Documentation is missing...

I don't want to work another week to solve these issues that shouldn't exist. I've lost two weeks when I should have been learning how to leverage all the multi-tenant capabilities. I don't have time to solve problems with other people's projects, and documentation is missing.

I want a working version of the software I paid $850 for now, or I want a refund.

I'm getting this error when trying to run the API project.

InvalidOperationException: Could not find 'UserSecretsIdAttribute' on assembly 'ApolloEHR.Web.Host, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Could not find 'UserSecretsIdAttribute' on assembly 'ApolloEHR.Web.Host, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Microsoft.Extensions.Configuration.ConfigurationExtensions.AddUserSecrets(IConfigurationBuilder configuration)

Microsoft.Extensions.Configuration.ConfigurationExtensions.AddUserSecrets(ICon

figurationBuilder configuration)

  1. Downloaded v3.2 and opened the API .sln.
  2. Modified the connection string to point to a database (used this same database previously, so it should work).
  3. Went to root directory of entity framework project and ran 'dotnet ef database update.'
  4. Get the following error:
Unhandled Exception: System.IO.FileNotFoundException: Could not find file 'D:\Users\Justin\Downloads\ApolloEHR\aspnet-core\src\ApolloEHR.EntityFramework\project.json'.

I went to upgrade to 3.2 and found this information in the FAQs. However, the Github project is just for documentation, not the code itself. Where is the code repository, how do we access it and how do we merge the changes with the previous code branch?

I just get a 404, even when logged in.

HOW TO UPGRADE EXISTING APPLICATIONS WHEN A NEW VERSION IS AVAILABLE? We can split updating to 2 parts:

1 - ASP.NET Boilerplate (the framework) and module-zero (base domain logic for user, role, tenant... management). They can be easily updated since they are distributed on nuget. Here, a list of all nuget packages:

<a class="postlink" href="http://www.aspnetboilerplate.com/Pages/Documents/Nuget-Packages">http://www.aspnetboilerplate.com/Pages/ ... t-Packages</a> <a class="postlink" href="http://www.aspnetboilerplate.com/Pages/Documents/Zero/Nuget-Packages">http://www.aspnetboilerplate.com/Pages/ ... t-Packages</a>

New releases generally are backward-compatible. If there is a breaking change, we add it to relase notes and document how to migrate. You can upgrade these nuget packages even after your license period ends, since they are open source. So, upgrading this part is easy. Just update nuget packages.

2 - AspNet Zero - the startup template: UI views and application services

This part is not developed as a 'closed' framework/library. Because different companies have very different needs and you will want to extend/change UI upon your needs. That's why we call AspNet Zero as a starter kit/template: All source codes of ASP.NET Zero is on your hands, you can freely modify it upon your needs.

In most cases you don't have to upgrade if you are happy with your solution. Even you might built the same feature yourself before us. If you like new features, you should adapt changes to your existing solution. In this case, Github repository will help you much (github.com/aspnetzero/aspnet-zero, requires purchasing ASP.NET Zero to access). You can compare releases and copy changed parts to your solution. For example, assume that we enhanced Audit Logs page with new features and you want to get these new awesome features. If you did not change this page, you can directly override your page and related classes. If you did change it, then you can see changes on Github and you can merge changes to your code. We also advice you to review each commit to check if it's also needed for you. Because some of they can be bugfixes.

Downloaded the new version (3.2) and ran into an issue running the APIj project: "InvalidOperationException: Could not find 'UserSecretsIdAttribute' on assembly 'ApolloEHR.Web.Host, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'."

However, I ran the project without running the database upgrade. So I circled back and read the documentation:

ASPNET ZERO MIGRATOR APPLICATION

AspNet Zero solution includes a .Migrator (like Acme.PhoneBook.Migrator) project in the solution. You can run this tool for database migrations on development and production (see development guide for more information).

However the development guide linked to does not contain any information on the Migrator project. Either the link needs to be fixed or the documentation is missing or both.

Showing 11 to 20 of 20 entries