小编Saa*_*an.的帖子

每个层次结构继承的实体框架表

我试图用我的一些数据库表实现每个层次结构继承的表,例如Address.我想获得3班从Address,这些都是EmployeeAddress,CustomerAddress,SupplierAddress.

+-------------------+------------------------+
| Address           |> EmployeeAddress       |
+-------------------+------------------------+
| ID                | ..                     |
| OwnerID           | EmployeeID             |
| OwnerCategory     | (condition: where = 0) |
| Street_1          | ..                     |
| Street_2          | ..                     |
| City              | ..                     |
| Province          | ..                     | 
| PostalCode        | ..                     |
+-------------------+------------------------+
                    |> CustomerAddress       |
                    +------------------------+
                    | ..                     |
                    | EmployeeID             |
                    | (condition: where = 1) |
                    | .. …
Run Code Online (Sandbox Code Playgroud)

c# wpf entity-framework

6
推荐指数
1
解决办法
6949
查看次数

实现IMultiValueConverter以在单元之间进行转换

我正在开发票系统,我正在使用DataGridfor item条目.我希望用户能够以不同的单位(例如英寸,英尺,米)输入数量,并将输入的数量转换为项目的库存单位.我的第一个想法是实现一个IMultiValueConverter,但我从昨天起就一直在努力,无法弄明白.

我的转换方法肯定是有效的,我实际上已经采取了身体,将其粘贴在另一种方法中并测试其输出.我的程序在ConvertBack方法中崩溃,我是C#的新手,我从未见过有人实际实现过该方法,所以我想知道为什么它迫使我实现它(我猜它是因为我的数量绑定不是单程),但我实际上需要转换后的值返回源对象Quantity属性.

我实际上没有问题ConvertBack,但是传递给方法的value参数是用户输入的值,而不是转换后的值,为什么呢?如果它不是转换后的值,那么由于这个原因,我无法弄清楚如何倒退,因为我只能访问用户输入的内容,而不能访问该方法中所需的单位.

我意识到我对转换器的理解可能已经过时了,但是如果有人可以帮助我理解我的想法在哪里,我会很感激,以及我的问题的任何潜在的解决方法/解决方案.

提前致谢!

页/ PurchaseInvoicePage.xaml

<DataGrid x:Name="ItemsGrid" Grid.Row="2" Grid.ColumnSpan="3" PreviewKeyDown="ItemsGrid_PreviewKeyDown" ItemsSource="{Binding Items}" FontSize="11" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" RowHeaderWidth="0" GridLinesVisibility="None" CanUserResizeRows="False" CanUserResizeColumns="False" CanUserReorderColumns="False">
    <DataGrid.Columns>

        <DataGridTemplateColumn x:Name="ItemNoColumn" Width="150" Header="Item No." IsReadOnly="True">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <TextBox Cursor="Arrow" Width="130" BorderThickness="0" Background="Transparent" IsReadOnly="True" Text="{Binding Number}" />
                        <Image Cursor="Hand" MouseDown="ItemSelectionButton_Click" Width="12" Source="/Images/Icons/SearchBlack.png" />
                    </StackPanel>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>

        <!-- question relative xaml starts here -->
        <DataGridTextColumn x:Name="QuantityColumn" Width="70" Header="Quantity">
            <DataGridTextColumn.Binding>
                <MultiBinding Converter="{StaticResource unitConverter}">
                    <Binding Path="Quantity" /> …
Run Code Online (Sandbox Code Playgroud)

c# wpf binding datagrid imultivalueconverter

5
推荐指数
2
解决办法
9409
查看次数

mysql加入同一张表,没有重复

我有一个instructors包含以下结构/数据的表:

-----------------
|id  | name     |
-----------------
|1   | saad     |
|2   | imran    |
-----------------
Run Code Online (Sandbox Code Playgroud)

我想在不返回重复结果的情况下对同一个表进行连接。

如果我做一个简单的连接,查询返回 4 行[saad, saad], [saad, imran], [imran, imran], [imran, saad]

如果我添加一个 where 子句,它会返回 2 行[saad, imran], [imran, saad]

但是,我只想返回 1 行,(即,如果[saad, imran]已经返回,则查询不应返回[imran, saad])。

到目前为止,这是我的查询:

SELECT DISTINCT
    i1.name AS name1,
    i2.name AS name2
FROM 
    instructors i1, instructors i2
WHERE
    i1.name != i2.name
ORDER BY
    name1, name2
Run Code Online (Sandbox Code Playgroud)

mysql join self-join

2
推荐指数
1
解决办法
2549
查看次数

C++删除指针上的运算符,指针不归零

我正在尝试用C++实现有向图.然而,我无法用我的RemoveEdge功能,之后我打电话的功能和它使用上的指针delete运算符,并设置指针nullptr,它不归零功能范围之外.

我不确定我是否已经清楚地说明了我的问题,但也许一些代码会有所帮助.

Graph.h

template<class TVertex, class TEdge, class TWeight>
class Graph
{
protected:
    std::list<Vertex<TVertex, TEdge, TWeight>*>* _Vertices;
    std::list<Edge<TVertex, TEdge, TWeight>*>* _Edges;
public:
    Graph();
    int TotalVertices();
    int TotalEdges();
    std::list<Vertex<TVertex, TEdge, TWeight>*>* Vertices();
    std::list<Edge<TVertex, TEdge, TWeight>*>* Edges();

    Vertex<TVertex, TEdge, TWeight>* FindVertex(const TVertex&);
    Vertex<TVertex, TEdge, TWeight>* InsertVertex(const TVertex&);
    void RemoveVertex(const TVertex&);

    Edge<TVertex, TEdge, TWeight>* FindEdge(const TEdge&);
    Edge<TVertex, TEdge, TWeight>* InsertEdge(const TVertex&, const TVertex&, const TEdge&, const TWeight&);
    void RemoveEdge(const TEdge&);
};
Run Code Online (Sandbox Code Playgroud)

Graph.FindEdge()

template<class TVertex, class TEdge, class TWeight>
Edge<TVertex, TEdge, TWeight>* …
Run Code Online (Sandbox Code Playgroud)

c++ pointers null-pointer delete-operator

1
推荐指数
1
解决办法
462
查看次数