EF в реальной жизни, я хочу верить (У кого-либо есть хорошие указатели на нетривиальный EF 1.0 (3.5) или 4,0 примера?)

@DongXu: Ваше решение сработало и для меня. Вот версия Xamarin.iOS , если она:

public class TopAlignedCollectionViewFlowLayout : UICollectionViewFlowLayout
{
    public override UICollectionViewLayoutAttributes[] LayoutAttributesForElementsInRect(CGRect rect)
    {
        if (base.LayoutAttributesForElementsInRect(rect) is UICollectionViewLayoutAttributes[] attrs)
        {
            // Find all the cells and group them together by the rows they appear on
            var cellsGroupedByRow = attrs
                .Where(attr => attr.RepresentedElementCategory == UICollectionElementCategory.Cell)
                // The default flow layout aligns cells in the middle of the row.
                // Thus, cells with the same Y center point are in the same row.
                // Convert to int, otherwise float values can be slighty different for cells on the same row and cause bugs.
                .GroupBy(attr => Convert.ToInt32(attr.Frame.GetMidY()));

            foreach (var cellRowGroup in cellsGroupedByRow)
            {
                TopAlignCellsOnSameLine(cellRowGroup.ToArray());
            }

            return attrs;
        }

        return null;
    }

    private static void TopAlignCellsOnSameLine(UICollectionViewLayoutAttributes[] cells)
    {
        // If only 1 cell in the row its already top aligned.
        if (cells.Length <= 1) return;

        // The tallest cell has the correct Y value for all the other cells in the row
        var tallestCell = cells.OrderByDescending(cell => cell.Frame.Height).First();

        var topOfRow = tallestCell.Frame.Y;

        foreach (var cell in cells)
        {
            if (cell.Frame.Y == topOfRow) continue;

            var frame = cell.Frame;

            frame.Y = topOfRow;

            cell.Frame = frame;
        }
    }
}
10
задан Martin Robins 22 June 2009 в 18:33
поделиться

6 ответов

Хорошие новости (по крайней мере, для EF4). Карл Перри сегодня опубликовал серию статей в блоге команды ADO.NET, в которых подробно описаны некоторые изменения, которые значительно облегчат жизнь. http://blogs.msdn.com/adonet/archive/2009/06/22/announcing-entity-framework-feature-ctp-1.aspx

0
ответ дан 4 December 2019 в 03:39
поделиться

See http://dataguidance.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28998 for the official EF v4 Reference Implementation (features ASP.NET MVC front end).

3
ответ дан 4 December 2019 в 03:39
поделиться

Я думаю, что пройдет некоторое время, прежде чем EF догонит Hibernate.

1
ответ дан 4 December 2019 в 03:39
поделиться

Не могу предоставить вам код, но могу поделиться своим опытом. Недавно попробовал linq to sql в реальном проекте. Это было неплохо, но это не соответствовало дизайну, основанному на предметной области (или я был слишком глуп, чтобы заставить его выглядеть так, как мне хотелось бы).

Пробовал linq для сущностей. Короче - потрачено ~ 2 дня. Я оставил свою надежду после того, как несколько раз прошел через редактирование сопоставлений.

Я придерживался NHibernate (потому что он ничего не генерирует). Но все они разочаровываются в поддержке sproc.

Возможно, следующий выпуск будет лучше. На данный момент мне это кажется неуклюжим.

1
ответ дан 4 December 2019 в 03:39
поделиться

Я задал аналогичный вопрос здесь , который относится к ASP.NET MVC. У меня в основном тот же вопрос, что и у вас, потому что я не видел много «реальных» примеров того, как EF работает с веб-сценарием .NET.

0
ответ дан 4 December 2019 в 03:39
поделиться

Я сам ищу информацию о EF, и когда меня направили сюда, я обнаружил, что большинство ответов здесь датировано после выхода EF4 CTP4.

Возможно, кто-то, прочитав мой ответ, скажет, что функции в CTP4 тоже устарели, поэтому я бы посоветовал всем, кто хочет реализовать entity framework по-настоящему, заглянуть в ADO.net Team Blog и проверить последние новости

.
0
ответ дан 4 December 2019 в 03:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: