01-12-2017, 10:29 PM
Нет , просто я хотел сначала написать для одного оружия , чтобы понять как использовать этот метод.
Но думаю переписать все под CRUD
Но думаю переписать все под CRUD
Dapper Update
|
01-12-2017, 10:29 PM
Нет , просто я хотел сначала написать для одного оружия , чтобы понять как использовать этот метод.
Но думаю переписать все под CRUD
01-12-2017, 10:48 PM
Ну раз попробовать, то сойдёт.
Но всё же попробуй Entity Framework.
01-12-2017, 10:56 PM
А он лучше или просто проще для освоения ?
01-13-2017, 12:26 AM
Актуальнее. Я перешёл с Dapper на EF из-за связей "через пятую точку".
К примеру EF и учётная запись с персонажами: [SRC="csharp"][Table("accounts")] public class Account : BaseEntity { [Key] public long Id { get; protected set; } public string Login { get; set; } public string Password { get; set; } public string Email { get; set; } public string Nickname { get; set; } public virtual ICollection<Character> Characters { get; set; } = new HashSet<Character>(); // ... } [/SRC] [SRC="csharp"][Table("characters")] public class Character : CharacterBase { [Key] public int Id { get; protected set; } public long AccountId { get; set; } public int CharacterBaseId { get; set; } public CharacterClass Class { get; set; } public int PlayedDuration { get; set; } public virtual Account Account { get; set; } // ... } [/SRC] И в контексте определяем связь: [SRC="csharp"]protected override void OnModelCreating(DbModelBuilder builder) { builder.Entity<Character>() .HasRequired<Account>(x => x.Account) .WithMany(x => x.Characters) .HasForeignKey(x => x.AccountId); // ... base.OnModelCreating(builder); } [/SRC]
01-13-2017, 01:41 PM
То есть от Cached'a можно избавляться?
01-13-2017, 03:36 PM
А для чего тебе ранее требовался "Cached"?
WCF и ORM так-то не одно и тоже.
07-27-2017, 08:32 AM
[SRC="csharp"]
public Character GetUpdate(int weapon_primary, int id) { try { using (var connection = Factory.conn) { string updateQuery = @"UPDATE `character` SET `WEAPON_PRIMARY` = @weapon_primary WHERE `ID` IN(@id)"; var update = connection.Execute(updateQuery, new { WEAPON_PRIMARY = weapon_primary, ID = id }); } } catch (Exception ex) { Log.Error(ex.ToString()); } return null; } [/SRC] [SRC="csharp"] [ServiceContract] public interface ICharacterDao { [OperationContract] Character GetCharacter(int accountId); [OperationContract] Character GetUpdate(int weapon_primary, int id); } [/SRC] Как задействовать в пакете чтобы он меня значение не только в игре но и в бд.
07-30-2017, 03:59 PM
Для чего при смене эквипа создаётся новый экземпляр объекта Character? Ведь эквип меняется именно для выбранных персонажей.
[SRC="csharp"]int Unk = ReadShort();[/SRC] Просто нужно разобраться с данными которые приходят от клиента. Например в этом месте количество затронутых персонажей (1 байт). А второй байт это индекс персонажа.
07-30-2017, 05:21 PM
PROGRAMMATOR Написал:Для чего при смене эквипа создаётся новый экземпляр объекта Character? Ведь эквип меняется именно для выбранных персонажей. А он и не создает, возвращает нулл ведь :Ъ Он наверное не понимает что нужно в интерфейсе объявить войд, непонятно зачем там модель чара) upd: увидел, в самом пакете создает, ТС-у: var character = Client.Character(укажи где у тебя чар размещен, наобум ткнул), т.е создай ссылку на уже существующего чара.
07-30-2017, 05:44 PM
Да я вообще не понимаю как работать с бд на сервере.
Может хотя бы примерно кто то показать как реализовать например чтобы обновлялся weapon_primary. Мне бы хотя бы сам принцип понять , а то догнать не могу. |
« Предыдущая | Следующая »
|
Возможно похожие темы ... | |||||
Тема | Автор | Ответы | Просмотры | Последний пост | |
Update Server to v42 | 5 | 3,958 |
03-22-2018, 07:55 AM Последний пост: TomCodder |
||
DB Update Code | 2 | 1,683 |
02-06-2018, 02:42 AM Последний пост: Zubastic |
||
server update | 0 | 1,214 |
12-12-2017, 04:57 PM Последний пост: fulo |
||
update client of server | 4 | 2,596 |
08-21-2017, 03:06 AM Последний пост: TomCodder |
||
Help Me ! (Update Server Client 2016) | 1 | 1,683 |
10-07-2016, 04:01 PM Последний пост: Awiion |