< Summary

Information
Class: AspNetCoreGeneratedDocument.Views_Shared_Components_DynamicTable_Default
Assembly: OzonOrdersWeb
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Views/Shared/Components/DynamicTable/Default.cshtml
Line coverage
0%
Covered lines: 0
Uncovered lines: 11
Coverable lines: 11
Total lines: 39
Line coverage: 0%
Branch coverage
0%
Covered branches: 0
Total branches: 14
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
ExecuteAsync()0%210140%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Views/Shared/Components/DynamicTable/Default.cshtml

#LineLine coverage
 1@model OzonOrdersWeb.ViewComponents.DynamicTableModel
 2
 03@if (Model.Columns.Count == 0)
 4{
 05    <div class="alert alert-secondary">Нет доступных столбцов для сущности «@Model.EntityName»</div>
 6}
 7else
 8{
 9    <table class="@Model.TableCssClass">
 10        <thead>
 11            <tr>
 012                @foreach (var col in Model.Columns)
 13                {
 014                    <th>@col.DisplayName</th>
 15                }
 16            </tr>
 17        </thead>
 18        <tbody>
 019        @if (Model.Rows.Count == 0)
 20        {
 021            <tr><td colspan="@Model.Columns.Count" class="text-center text-muted">@Model.EmptyMessage</td></tr>
 22        }
 23        else
 24        {
 025            @foreach (var row in Model.Rows)
 26            {
 27                <tr>
 028                    @foreach (var col in Model.Columns)
 29                    {
 030                        var prop = Model.PropertyAccessors.TryGetValue(col.FieldName, out var p) ? p : null;
 031                        var val = prop?.GetValue(row);
 032                        <td>@val</td>
 33                    }
 34                </tr>
 35            }
 36        }
 37        </tbody>
 38    </table>
 39}

Methods/Properties

ExecuteAsync()