Inhalte aufrufen

Profilbild

.Net 5 & MVC6


30 Antworten zu diesem Thema

#1 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 16 November 2015 - 19:59

Do you plan to develop smartstore, with the upcoming asp .net 5 and MVC6 technologies?
Also, it's ok to use this smartstore, to extend and customize some of it's functionalities?

Thank you in advance. 



#2 Murat Cakir

Murat Cakir

    SmartStore AG

  • Administrators
  • 990 Beiträge

Geschrieben: 18 November 2015 - 18:30

A migration to ASP.NET 5 Core + MVC 6 is definitely on our roadmap, but this will take a while. Many parts of SmartStore.NET must be developed from scratch in order to benefit from platform independence. Without dnxcore an upgrade does not make any sense, it would just be an upgrade with no real user benefit, except for slightly better performance.

 

Furthermore, dnxcore will not be mature enough with it's initial release to fulfill all requirements of complex frameworks like SmartStore.NET:

  • No real concept for modular applications with pluggable components
  • No built-in email sending (!)
  • No lazy loading with Entity Framework 7
  • Lack of MVC child actions (the new alternative ViewComponents are a piece of shit... no model binding etc.)

So we have to wait for a more mature release or for 3rd parties to fill the gaps.

 

Concerning your second question: of course it is OK to extend and customize SmartStore.NET. It's open source.


Murat Cakir
SmartStore AG


#3 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 18 November 2015 - 22:00

Thank you very much.



#4 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 18 November 2015 - 22:03

And something else:

 

This future migration (A migration to ASP.NET 5 Core + MVC 6), may include more features for blog/news oriented websites?

 

Thanks again.


  • MediArt gefällt das

#5 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 19 April 2016 - 18:47

Hi,

 

I would like to ask you something about third party plugins, that you are using in the whole solution:

 

As i observed all backend screens (SmartStore.Administration project) are built using Teleric.MVC thrid party plugin.

This plugin is entirely free? It does not require any license in case i use it in a production environment?

 

Thank you.



#6 Murat Cakir

Murat Cakir

    SmartStore AG

  • Administrators
  • 990 Beiträge

Geschrieben: 20 April 2016 - 18:16

Yes, the Telerik MVC suite version we're using is GPL-based and entirely free for any purpose.


Murat Cakir
SmartStore AG


#7 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 17 September 2016 - 18:54

What about the ASP. Net Identity in SmartStore? Will be applied some time in smartstore?



#8 Murat Cakir

Murat Cakir

    SmartStore AG

  • Administrators
  • 990 Beiträge

Geschrieben: 19 September 2016 - 18:29

What about the ASP. Net Identity in SmartStore? Will be applied some time in smartstore?

 

Yes it will, once we migrate our codebase to ASP.NET Core.


Murat Cakir
SmartStore AG


#9 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 26 September 2016 - 20:15

Hi,

 

Can you please assist, on how i can apply sorting and filtering for example on Topics Screen in the administration project?

I have tried the below in Views\Topic\List.cshtml, but it seems  that the sorting is not working:

 

  @(Html.Telerik().Grid<TopicModel>()
                    .Name("topics-grid")
                    .Sortable()
                    .Columns(columns =>
                    {
                        columns.Bound(x => x.SystemName)
                            .Width(280)
                            .Template(x => Html.ActionLink(x.SystemName, "Edit", new { id = x.Id }))
                            .ClientTemplate("<a href='Edit/<#= Id #>'><#= SystemName #></a>");
                        columns.Bound(x => x.Title);
                        columns.Bound(x => x.IsPasswordProtected)
                            .Template(item => @Html.SymbolForBool(item.IsPasswordProtected))
                            .ClientTemplate(@Html.SymbolForBool("IsPasswordProtected"))
                            .Centered();
                        columns.Bound(x => x.IncludeInSitemap)
                            .Template(item => @Html.SymbolForBool(item.IncludeInSitemap))
                            .ClientTemplate(@Html.SymbolForBool("IncludeInSitemap"))
                            .Centered();
                        columns.Bound(x => x.RenderAsWidget)
                            .Template(item => @Html.SymbolForBool(item.RenderAsWidget))
                            .ClientTemplate(@Html.SymbolForBool("RenderAsWidget"))
                            .Centered();
                        columns.Bound(x => x.WidgetZone);
                        columns.Bound(x => x.LimitedToStores)
                            .Template(item => @Html.SymbolForBool(item.LimitedToStores))
                            .ClientTemplate(@Html.SymbolForBool("LimitedToStores"))
                            .Hidden(Model.AvailableStores.Count <= 1)
                            .Centered();
                        columns.Bound(x => x.Priority)
                            .Centered();
                    })
                    .DataBinding(dataBinding => dataBinding.Ajax().Select("List", "Topic"))
                    .ClientEvents(events => events.OnDataBinding("onDataBinding"))
                    .EnableCustomBinding(true))
 
 
Also how can i apply a different color on any row based on a condition on specific property of the model?
 
 
Thank you very much.


#10 Marcus Gesing

Marcus Gesing

    SmartStore AG

  • Administrators
  • 2941 Beiträge

Geschrieben: 27 September 2016 - 12:02

The grid commands are not automatically translated into queryable order statements. You can configure a single column ordering like in the product grid and apply them in the action method like here.

Schöne Grüße aus Düsseldorf,
Marcus Gesing


#11 Marcus Gesing

Marcus Gesing

    SmartStore AG

  • Administrators
  • 2941 Beiträge

Geschrieben: 27 September 2016 - 12:10

 

Also how can i apply a different color on any row based on a condition on specific property of the model?

 

 

By a client-side onRowDataBound event handler like here and here. It wraps the cell content of all inactive rows in muted (grayed) span.


Schöne Grüße aus Düsseldorf,
Marcus Gesing


#12 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 27 September 2016 - 21:23

Thank you very much Marcus for your help.

 

The onRowDataBound worked perfectly.

I still can't implement the paging. I have seen the related code on product grid..it seems complex..is there any simpler way to implement this?

 

Thank you very much for your whole assistance.



#13 Marcus Gesing

Marcus Gesing

    SmartStore AG

  • Administrators
  • 2941 Beiträge

Geschrieben: 28 September 2016 - 12:02

Unfortunately no. It's the most simple solution I know at the moment.


Schöne Grüße aus Düsseldorf,
Marcus Gesing


#14 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 28 September 2016 - 20:11

Can you suggest any other screen except product screen where paging with ajax is being applied?

 

Thank you very much.



#15 Marcus Gesing

Marcus Gesing

    SmartStore AG

  • Administrators
  • 2941 Beiträge

Geschrieben: 28 September 2016 - 20:52

For example paging of manufacturer list.


Schöne Grüße aus Düsseldorf,
Marcus Gesing


#16 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 06 October 2016 - 21:29

Thanks Marcus.

The example with manufacturer was very helpful!



#17 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 26 January 2017 - 20:18

Hi,

 

When the smartstore v3 is going to be released?

The ASP. Net Identity and Tag Helpers will be applied in this last version?

 

 

Thank you.


  • MediArt gefällt das

#18 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 27 February 2017 - 13:08

Hi,

 

I am trying to run the application and got the following error: 

"

The requested service 'Web.Framework.Routing.IRoutePublisher' has not been registered. To avoid this exception, either register a component to provide the service, check for service registration using IsRegistered(), or use the ResolveOptional() method to resolve an optional dependency.

"

Line 31: if (key == null)
Line 32: {
Line 33:                 return (scope ?? Scope()).Resolve<T>();
Line 34: }
Line 35:             return (scope ?? Scope()).ResolveKeyed<T>(key);

 

 

Thank you for your assistance.



#19 Marcus Gesing

Marcus Gesing

    SmartStore AG

  • Administrators
  • 2941 Beiträge

Geschrieben: 27 February 2017 - 16:28

I would guess that this is caused by a version conflict of a referenced component. Here was a wrong version of Newtonsoft.Json the reason.

Schöne Grüße aus Düsseldorf,
Marcus Gesing


#20 HybridDevelopment

HybridDevelopment

    Member

  • Members
  • PunktPunkt
  • 19 Beiträge

Geschrieben: 27 February 2017 - 18:46

Hi Marcus.

 

Thanks for your response. I have changed newtonsoft to be the same version across all the projects, but now the below error raised related with the Autofac.WebApi package:

 

"Attempt by security transparent method 'Autofac.Integration.WebApi.RegistrationExtensions.RegisterApiControllers(Autofac.ContainerBuilder, System.Reflection.Assembly[])' to access security critical type 'Autofac.Builder.IRegistrationBuilder`3<System.Object,Autofac.Features.Scanning.ScanningActivatorData,Autofac.Builder.DynamicRegistrationStyle>' failed.

Assembly 'Autofac.Integration.WebApi, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' is marked with the AllowPartiallyTrustedCallersAttribute, and uses the level 2 security transparency model.  Level 2 transparency causes all methods in AllowPartiallyTrustedCallers assemblies to become security transparent by default, which may be the cause of this exception."





Auf dieses Thema antworten