Поиск  
Always will be ready notify the world about expectations as easy as possible: job change page
Новости
17 сентября 2018

Power of Knockout.js for ASP.NET MVC

Knockout MVC

Brief Overview

Knockout.js - is a popular JavaScript library that allows easy creation of feature-rich applications based on Model-View-View Model (MVVM) pattern: user interface can be bound to a separate existing data model. And any change of the model will result in dynamic refresh of the interface.

Knockout MVC is a library for ASP.NET MVC3/MVC4 , that is a wrapper for Knockout.js, that helps to move entire business logic to the server side: the complete JavaScript code necessary on the client side will be generated automatically based on the described C# (or VB.NET) model. Binding of the page interface to business model is done MVVM-style with the help of C#/VB.NET expressions (not separate properties, but expressions over them that will be translated to JavaScript code) using IntelliSense. If complex operations should be done to the model, it is possible to address to any model method on the server using one short string (ajax query will be automatically generated; and when the client will get the updated model, the whole interface will automatically refresh).

Generated JavaScript code is based on Knockout.js and that is why it works under any browser (even IE 6). Thus, describing the whole business logic on the server in a single instance we get an ability to create fully-featured cross-browser client Web application without writing a single JavaScript code!

Compatibility

Today, any serious application rarely uses only one library. And very often the problem of libraries compatibility arises. Knockout MVC lacks this disadvantage. It is always possible to add your own native Knockout-code to the existing C# code (example). And Knockout itself greatly mates with any other libraries. Knockout.js doesn’t depend on any other libraries; however its core hides various useful tools for work with jQuery (that start working when it is connected). It is possible to use other libraries (for example, Prototype), but is you use jQuery (as many other developers) you can use any jQuery plug-ins (for example, jQuery.Validation, example). You can use RequireJs (example) to load big scripts.

Besides compatibility with third-party libraries, it’s worth to mention browser compatibility: Knockout MVC is completely cross-browser (since it is based on Knockout.js) and works fine in IE 6+, Firefox 2+, Opera 10+, Chrome, Safari.

14 сентября 2018

Три недели для этого сайта и Blackball прошли не зря. Было сделано много улучшений и добавлены новые возможности.

5 сентября 2018

Поиски работы увенчались успехом, в деле уже вторую неделю. Но времени на свои проектики остаётся очень мало. Ну тут не о чем переживать.

20 августа 2018

Находясь в поисках постоянного места работы начал замечать что сейчас очень высок интерес к .NET Core.
Для себя обозначил направление в котором надо развиваться:
- .NET Core
- AngularJS
- TypeScript
- Docker

12 августа 2018

SQLite для небольших проектов

Проект MV Princess Anastasia планировался заказчиком как максимально простенький, но аппетит приходит во время еды. Если изначально планировалось что это будет простая фотогалерея, в которой туристы смогут просматривать фотографии и заказывать с ними всякое, то сейчас уже есть интерес к хранению статистики, поиску, комментированию, одобрению/неприятию, архивированию и т. п.

И было мне видение что без базы данных тут уже не обойтись и выбор пал на SQLite. Так как проект будет болтаться по морям и океанам, планируются обновления во время круиза, а доступа для поддержки у меня не будет - простота реализации всем только на пользу.

12 августа 2018

LiteDB: Embedded NoSQL database for .NET

An open source MongoDB-like database with zero configuration - mobile ready.

http://www.litedb.org/

Standalone database

LiteDB is serverless database delivered in a single DLL (less than 350kb) fully written in .NET C# managed code (compatible with .NET 3.5, 4.x, NETStandard 1.3 and 2.0).

Install via NuGet or just copy DLL to your bin project folder.

Install-Package LiteDB

Fast and lightweight

LiteDB is a simple and fast NoSQL database solution. Ideal for:

  • Mobile Apps
  • Desktop/local small applications
  • Application file format
  • Small web applications
  • One database per account/user data store

And much more...

  • Portable UWP and Xamarin iOS/Android
  • ACID transaction
  • Single datafile (like SQLite)
  • Recovery data in writing failure (journal mode)
  • Map your POCO class to BsonDocument
  • Fluent API for custom mapping
  • Cross collections references (DbRef)
  • Store files and stream data (like GridFS in MongoDB)
  • LINQ support
  • FREE for everyone - including commercial use
9 августа 2018

Мой новый проектик MV Princess Anastasia (фотогалерея для круизных лайнеров) уже вошёл в стадию бета-версии.

Основное требование - простота. Но это если про клиентский сайт. А в админке будет интересно...

7 августа 2018

Параллельно с активным поиском работы занялся разработкой фотогалереи для знакомого фотографа, работающего на паромах и круизных лайнерах. Изначально простая галерея по просьбам трудящихся начинает превращаться в нормальное такое web-приложение, с администрированием и прочими интересностями. ASP.NET MVC, SignalR, Bootstrap, Angular.js - всё как в лучших домах. У меня с этим строго.

Жаль, показать пока не могу, разрешение на это не выдали, а без этого кодекс чести программера не позволяет открывать проекты заказчиков в публичный доступ даже для портфолио. Потом возможно разрешат, с демо-контентом.

3 августа 2018

Не знаю кому это тут может быть интересно и нужно, но возможно осенью сделаю для посетителей возможность регистрации и создания подборок (книг, статей).

4 июля 2018

Обратились с просьбой написать фотогалерею для использования на круизных лайнерах. Люди путешествуют по морю, фотографируются, заказывают фото на обработку, печатают, скачивают, увозят с собой на память. Не могу не помочь фотографам в их нелёгком деле.


© 1999–2024 WebDynamics
1980–... Sergey Drozdov
Area of interests: .NET Framework | .NET Core | C# | ASP.NET | Windows Forms | WPF | HTML5 | CSS3 | jQuery | AJAX | Angular | React | MS SQL Server | Transact-SQL | ADO.NET | Entity Framework | IIS | OOP | OOA | OOD | WCF | WPF | MSMQ | MVC | MVP | MVVM | Design Patterns | Enterprise Architecture | Scrum | Kanban