Popular Tags:

Доска рекордов на WCF и RavenDB. Сервис

16.04.2014 at 19:29

Несколько раз на работе делали миниигры — пасхалки на новый год или еще какой праздник. Каждый раз единственное, что не успевали — таблица рекордов. Ее и буду делать. Доска будет представлять собой сервис с 2 методами — добавить результат и получить топ n результатов.

Для начала создадим интерфейс сервиса — контракт в терминах WCF

/// <summary>
/// Контракт сервиса доски рекордов.
read more

Зачем нужен домашний проект и как выбрать тему для него

13.03.2014 at 18:23

Насчет программирования дома для себя чаще всего возникают два вопроса: для чего это нужно и что бы такое написать. На эти вопросы я и постараюсь ответить.

Польза от домашнего проекта

  • Самообучение. Очень сложно изучать новую технологию по книжкам. Намного больше знаний останется в голове, если учиться на отдельном небольшом проекте. Тему проекта лучше выбирать подходящую для технологии.
read more

Линкблог #23

24.02.2014 at 19:53

read more

Code Behind для стиля в WPF

24.02.2014 at 19:29

Часто возникает ситуация, когда нужно добавить обработчик через стиль или шаблон. Для этого нужно объявить partial класс для словаря ресурсов, в котором находится стиль. В этом классе и будут обработчики. Сделать это очень просто. Сначала создадим словарь ресурсов, в котором укажем класс с помощью атрибута «x:Class»:

<ResourceDictionary x:Class="TestApplication.MyDictionary" 
                    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <Style TargetType="{x:Type Button}" x:Key="ButtonStyle">
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="{x:Type Button}">
          <Border BorderThickness="1" BorderBrush="Black">
            <Label Content="{TemplateBinding Content}" Margin="10" 
                   MouseEnter="MouseEnterHandler" 
                   MouseLeave="MouseLeaveHandler" />
          </Border>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>
</ResourceDictionary>

Здесь переопределен шаблон для кнопки. read more

Редактор html и подсветка синтаксиса

11.12.2013 at 19:44

В проекте на MVC4 решил сделать возможность редактировать текст материала в WYSIWYG редакторе, добавить подсветку для программного кода и добавить в редактор поддержку этой подсветки. К счастью, писать самому ничего не пришлось, хватило сторонних решений.

WYSIWYG редактор.

Я использовал TinyMCE. Подключается он очень просто, нужно в .cshtml файл добавить такие строчки:

@Scripts.Render("//code.jquery.com/jquery-1.10.2.min.js")
@Scripts.Render("//tinymce.cachefly.net/4.0/tinymce.min.js")

Хотя можно и добавить эти файлы в проект, это не важно. read more

Линкблог #22

05.12.2013 at 18:51

.Net

GameDev

read more

Импорт записей из WordPress в приложение на ASP.NET MVC 4

07.11.2013 at 19:47

Модель данных

Создадим три сущности — пост, категория и тег. У каждого поста может быть одна категория и несколько тегов.

[Table("Category")]
public class Category
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int CategoryId { get; set; }

  public string Name { get; set; }
}

[Table("Tag")]
public class Tag
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int TagId { get; set; }

  public string Name { get; set; }

  public ICollection<Post> Posts { get; private set; }

  public Tag()
  {
    this.Posts = new List<Post>();
  }
}

[Table("Post")]
public class Post
{
  [Key]
  [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
  public int PostId { get; set; }

  public string Title { get; set; }

  [Column(TypeName = "ntext")]
  public string Body { get; set; }

  public Category PostCategory { get; set; }

  public ICollection<Tag> PostTags { get; set; }

  public Post()
  {
    this.PostTags = new List<Tag>();
  }
}

Для доступа к данным создаем контекст

public class PostContext : DbContext
{
  public PostContext() : base("DefaultConnection") { }

  public DbSet<Post> Posts { get; set; }
  public DbSet<Category> Categories { get; set; }
  public DbSet<Tag> Tags { get; set; }
}

Благодаря механизму Code First в Entity Framework, база создастся сама. read more

Линкблог #21

04.10.2013 at 18:54

.Net

GameDev

  • Анонс Unity 4.3. Из плюшек — инструменты для разработки 2D игр и инструмент для встраивания рекламы.
  • GOG собирается заняться изданием игр.
read more

Простая локализация в Unity3d

03.09.2013 at 18:16

Быстрые и простой способ локализации приложения на Unity3D

Определение текущего языка

В unity текущий язык лежит в свойстве Application.systemLanguage. Возвращает оно перечисление, нас будет интересовать только значение SystemLanguage.Russian.

Загрузка ресурсов

Файлы с ресурсами локализации нужно хранить в папке Assets/Resources. Это позволит получать их с помощью метода Resources.Load.

Класс менеджера локализации

Менеджера я решил сделать одиночкой. read more

Поиск пути на Unity3d с помощью библиотеки A* Pathfinding Project

28.08.2013 at 19:17

Я уже писал о реализации алгоритма A*, теперь я хочу поделиться инструкцией по использованию готовой библиотеки на Unity 3D.

Начало работы

  1. Скачиваем бесплатную версию здесь, распаковываем скачанный архив.
  2. Через пункт меню Assets -> Import Package -> Custom Package… импортируем скачанный пакет.
  3. Создаем плоскость, на ней создаем несколько кубов – препятствий, располагаем их на отдельном слое Cubes.
read more