by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Mike Casas
    @mikecasas
    vague question, In Visual Studio, I add docker support to the Oqtane.Server project, and it adds the "typical" Docker file of:
    #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
    
    FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
    WORKDIR /app
    EXPOSE 80
    
    FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
    WORKDIR /src
    COPY ["Oqtane.Server/Oqtane.Server.csproj", "Oqtane.Server/"]
    COPY ["Oqtane.Shared/Oqtane.Shared.csproj", "Oqtane.Shared/"]
    COPY ["Oqtane.Client/Oqtane.Client.csproj", "Oqtane.Client/"]
    RUN dotnet restore "Oqtane.Server/Oqtane.Server.csproj"
    COPY . .
    WORKDIR "/src/Oqtane.Server"
    RUN dotnet build "Oqtane.Server.csproj" -c Release -o /app/build
    
    FROM build AS publish
    RUN dotnet publish "Oqtane.Server.csproj" -c Release -o /app/publish
    
    FROM base AS final
    WORKDIR /app
    COPY --from=publish /app/publish .
    ENTRYPOINT ["dotnet", "Oqtane.Server.dll"]
    I am able to build and run. In Visual Studio, it opens on http://localhost:32781/, but I get the error message of :
     System.Net.Http.HttpRequestException: Cannot assign requested address
     ---> System.Net.Sockets.SocketException (99): Cannot assign requested address
    The long detailed message points to ServiceBase.cs. After numerous attempts, I can get it working by just changing the CreateApiUrl method from return apiurl; to return "http://localhost:80" + apiurl;
    Mike Casas
    @mikecasas
    The issue isn't Oqtane, it's using Docker, but I was wondering if anyone had any thoughts or help? Usually other Blazor/Docker tutorials I have seen takes the same approach and it works. Thanks in advance!
    Shaun Walker
    @sbwalker
    @JanOlsmar I am looking deeper into the System Update issue you reported - I think I found the issue
    Mike Casas
    @mikecasas
    @sbwalker Would you want to move from here to github discussions. At least it places the content closer to the repo.
    Shaun Walker
    @sbwalker
    I would be happy to move to Github Discussions - however it is still in beta and is not yet available to projects AFAIK
    PoisnFang
    @PoisnFang
    I am a personal fan of discord. It is way better for making sure you dont miss anything on the discussion and easier to ping someone.
    Mike Casas
    @mikecasas
    I think statiqdev got a channel going.
    Shaun Walker
    @sbwalker
    There does not seem to be any way to enable it within a project yet on Github - and no application form to join the Beta program. So it must be based on invite only.
    Mike Casas
    @mikecasas
    @sbwalker ok.
    Francois Mongeau
    @FrancoisMongeau
    @sbwalker Thank you for taking the time to do the AMA video. That answered my major questions, namely: "Oqtane is not simply a CMS, it is an application framework" and "you don't need the most costly editions for VS: the Comunity Edition will do just fine". I've been following Blazor for years and Oqtane since last year: I'm sold :) It<s time for me to take the jump. My next project will use Oqtane. Thanks for the great work. I hope I can humbly contribute, eventually (also thanks to the contributors).
    PoisnFang
    @PoisnFang
    I will be releasing an open source Module soon that demonstrates how I am utilizing the new URL Parameters feature.
    Mark Davis
    @nohorse
    FYI downloading and applying the corillian theme seems to crach the app. no big deal.. shoud I report a bug?
    Orchard Skills
    @OrchardSkills
    I'm new here. How do I get started?
    Mark Davis
    @nohorse
    ho @OrchardSkills I'm pretty new but can help. let m e fin a good resource....
    Orchard Skills
    @OrchardSkills
    @nohorse Awesome Thanks!
    PoisnFang
    @PoisnFang
    @OrchardSkills Go through Shaun's Videos on creating an external module https://www.youtube.com/playlist?list=PLYhXmd7yV0elLNLfQwZBUlM7ZSMYPTZ_f
    Shaun Walker
    @sbwalker
    @nohorse are you running on Blazor Server or WebAssembly? And which version of Oqtane are you running?
    Orchard Skills
    @OrchardSkills
    @PoisnFang Thanks I will.
    Shaun Walker
    @sbwalker
    @nohorse I was able to reproduce the problem. It was caused by an issue in PR #649 which broke the module and theme installation logic
    PoisnFang
    @PoisnFang
    @sbwalker I am currently experiencing the same issue that this blog post references. What are you thoughts on it? https://dotnetcoretutorials.com/2020/03/15/fixing-json-self-referencing-loop-exceptions/
    PoisnFang
    @PoisnFang
    i would very much like to add the global filter because it fixes A LOT of headaches for me, but I do not know how it affects other developers.
    Shaun Walker
    @sbwalker
    @PoisnFang I do not understand how this is an Oqtane issue? I do not believe this self referencing pattern exists anywhere in the framework and I have definitely not encountered this error.
    Shaun Walker
    @sbwalker
    Are you creating custom modules which have EF bi-directional relationships with Oqtane core entities?
    PoisnFang
    @PoisnFang
    @sbwalker My modules have bi directional relationships with their entities. the Oqtane Core sets the Json provider for the Controllers in the Starup.cs of Oqtane.Server on line 203.
                services.AddMvc()
                    .AddNewtonsoftJson()
                    .AddOqtaneApplicationParts() // register any Controllers from custom modules
                    .ConfigureOqtaneMvc(); // any additional configuration from IStart classes.
    setting it to this fixes the issue.
                services.AddMvc()
                    .AddNewtonsoftJson(x => x.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore)
                    .AddOqtaneApplicationParts() // register any Controllers from custom modules
                    .ConfigureOqtaneMvc(); // any additional configuration from IStart classes.
    PoisnFang
    @PoisnFang
    I do not believe there is a way to control this Per Module
    There are obviously a lot of things to consider when making a change like this. I just wanted to make sure you were aware that this will happen to Module developers like me who dont use ViewModels.
    iJungleboy
    @iJungleboy
    Awesome news: I got 2sxc to run on .net core 🚀. Still Proof-of-concept, but the architecture choices of the last 4 years are finally paying off.
    We will probably have a basic 2sxc running on Octane before EOY
    @sbwalker could you check my questions on oqtane/oqtane.framework#570 - I need a few things decided before I can start with docfx
    Shaun Walker
    @sbwalker
    @PoisnFang this tends to be a very opinionated topic. I also prefer to share my Entity models and not create dedicated ViewModels (DTOs) - which is why you see properties in the Oqtane Entity models which are decorated with [NotMapped] attributes ( which some people would criticize but its a matter of personal preference ).
    Have you tried the solution in your models to use [JsonIgnore]? It would seem to have the same effect as the more global solution but could be employed in your module code.
    @iJungleboy my apologies... I did not see your questions in issue #570 - I will provide some answers today
    PoisnFang
    @PoisnFang
    @sbwalker JsonIgnore will prevent me from attaching properties to the objects that I am calling. Which means I will still have to do additional calls calls to get those properties and store them as separate objects. Which really doesnt become all the much different then just using ViewModels.
    PoisnFang
    @PoisnFang
    After a ton of research i was able to find how to insert custom Json Serialization settings per controller. I made this gist, showing what I created: https://gist.github.com/PoisnFang/d73ad829741cbef4ebb90b1e6a8864e4
    Shaun Walker
    @sbwalker
    @PoisnFang your solution looks very clever
    in the recent C# Corner show I was interviewed on, there was a question about upgrading Oqtane so I spent some time on this over the past week and I was able to resolve some issues with the System Update feature.
    Shaun Walker
    @sbwalker
    However this means for versions prior to 1.0.3 you need to do a manual upgrade. So I created a blog to describe the steps. https://www.oqtane.org/Resources/Blog/PostId/543/upgrading-oqtane
    thenrich2009
    @thenrich2009
    Regarding using GitHub Discussion, you can ask to join the beta program for your repo. A repo has to have at least 3 contributors which Oqtane already has. Eventually, when Discussions officially comes out, I would like to see us move to there. I am not a fan of IIRC type of discussions where everything, every topic and replies is one continuous stream of text.
    matt cownie
    @mcownie
    So i am putting together a CI/CD process in azure devops and its gone swimmingly until i get to the 'adding a module' bit. Slightly stumped on how i can automate this bit? suspect i am snookered for the moment. I really, really like the modular feature
    Shaun Walker
    @sbwalker
    You can deploy your module packages as part of your CI/CD to the wwwroot/Modules folder and when the framework starts up it will install them
    This is true for themes packages as well - they can be deployed to wwwroot/Themes. Note that when I say packages I am referring to Nuget packages ( *.nupkg ).
    Shaun Walker
    @sbwalker
    Another option is you automate the build of your modules and include a post-build step to copy the DLLs into your Oqtane /publish folder, and then deploy that folder to your environment
    the Nuget option is a bit more robust as modules/themes may have static resources and additional assemblies they are dependent upon - which is what Nuget is designed to handle
    @thenrich2009 how does one ask to join the Beta program for Discussions - is there an online form?
    matt cownie
    @mcownie
    @sbwalker neat, was just reading the package code and thinking ' I am being dumb' - brilliant thanks