Если бы я хотел сохранить таблицу плиток, в которой ни одна плитка не может иметь одинаковые значения X и Y (каждая из них имеет уникальное местоположение), было бы лучше сделать первичный ключ строкой вроде «4, -20» (это похоже на неправильный ответ) или использовать стандартный идентификатор первичного ключа приращения и просто хранить X и Y в качестве других столбцов?
В качестве альтернативы, могу ли я сделать X и Y ОБА первичными ключами? Тогда мне не нужно было бы хранить какую-то комбинированную строку, чтобы убедиться, что они уникальны... или нет? Сделать какое-то двойное ограничение?
По сути, я хочу, чтобы поиск строки на основе X и Y или даже диапазона значений X и Y был быстрым.
public class Tile
{
public int X { get; set; }
public int Y { get; set; }
}