标签: business-objects

CSLA在更改后不将对象报告为脏

我有一个CSLA对象正在从数据库返回数据,但是当我更改对象的任何属性时,对象仍然说IsDirty ="false".虽然当我创建一个新对象时,它会报告IsDirty ="true".我确信它只是我的代码中缺少的一些简单的东西.以下是我的目标:

    [Serializable()]
[ObjectFactory( FactoryNames.SiteFactoryName )]
public class Site : BusinessBase<Site>
{
    #region Business Methods

    public static PropertyInfo<int> IdProperty = RegisterProperty<int>( p => p.Id );
    public int Id 
    {
        get { return GetProperty( IdProperty ); }
        set { LoadProperty( IdProperty, value ); }
    }

    public static PropertyInfo<string> NameProperty = RegisterProperty<string>( p => p.Name );
    public string Name
    {
        get { return GetProperty( NameProperty ); }
        set { LoadProperty( NameProperty, value ); }
    }

    public static PropertyInfo<string> CodeProperty = RegisterProperty<string>( …
Run Code Online (Sandbox Code Playgroud)

asp.net csla asp.net-mvc business-objects

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

如何处理业务对象中的空值

假设我有一个像这样的自定义类:

public class Customer    
{        
 public int CustomerID { get; set; }        
 public string CompanyName { get; set; }        
 public string BusinessAddress { get; set; }        
 public string Phone { get; set; } 
 public int ParentID { get; set; } 
}
Run Code Online (Sandbox Code Playgroud)

我使用datareader从数据库创建自定义对象.例如:

  while (dr.Read())
  {
    listCustomers.Add(new Customer(
          Convert.ToInt32(dr["CustomerID"]),
          Convert.ToString(dr["CompanyName"]),
          Convert.ToString(dr["BusinessAddress"]),
          Convert.ToString(dr["Phone"]),
          Convert.ToInt32(dr["ParentID"]),
)
Run Code Online (Sandbox Code Playgroud)

ParentID在数据库中可以为null(我无法更改它).当它为null时,转换显然会失败.

我应该如何处理从数据库中检索的空值来填充我的业务对象?在我的自定义类中使用Nullable Types会不会很好?还有其他提示吗?

c# sql-server asp.net business-objects

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

Crystal Reports:更改数据源后“无法保存文档”

我的.NET 2.0站点上大约有15个.RPT文件,最近我更改为新的数据库服务器。

我成功地更改了其中14个.RPT文件的数据源,但是在其中一个进行更改之后,当我尝试保存更新的报告时,出现“无法保存文档”的信息。我可以更改子报表的数据源,并将其保存得很好,但是当我尝试更改主报表的数据源时,我收到了该错误消息。

我肯定在整个过程中的不同时间都在执行“验证数据库”,但这似乎无济于事。

有任何想法吗?

vb.net asp.net business-objects crystal-reports

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

Crystal Reports Xi - 按摘要字段排序CrossTab报告

所以我有一个简单的交叉表报告,用于计算列中的销售数量,行数是每个办公室.右边的最后一列是一个总列,其中包含一个汇总字段(通过身份字段的计数),它将每个办事处的总销售额相加.

如何对交叉表数据进行排序,以便销售额最高的办公室排在第一位,其余的排在下面?

business-objects crystal-reports

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

将POCO实体转换为业务实体

我愿意将实体框架集成为我的数据层.

我使用本教程跟踪文章并生成了poco实体:http://blogs.msdn.com/b/adonet/archive/2010/01/25/walkthrough-poco-template-for-the-entity-framework.aspx

我有自己的业务对象.这是我的业务对象Brach:

public class Branch
{
    public long BranchId { get; private set; }
    public string BranchName { get; set; }
    public string BranchCode { get; set; }

    public Branch() { }

    public void InsertBranch(Guid companyId)
    {
        using (var ctx = new Entities.Entities())
        {
            var branch = new T_STF_BRANCH() //This is generated POCO object
            {
                company_id = companyId,
                branch_name = BranchName,
                branch_code = BranchCode
            };
            ctx.T_STF_BRANCH.AddObject(branch);
            ctx.SaveChanges();
        }
    }

    public static IList<Branch> GetBranchesList(Guid companyId, long? branchId, …
Run Code Online (Sandbox Code Playgroud)

.net entity-framework business-objects poco entity-framework-4

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

将命令从业务对象绑定到MVVM中的View

我通过MVVM在WPF中填充DataGrid。我有具有4个属性的业务对象,用于在DataGrid中创建行和列。

<DataGrid CanUserAddRows="True" ItemsSource="{Binding Path=PersonsInfo}" AutoGenerateColumns="False"
                  CanUserDeleteRows="True" CanUserReorderColumns="True" 
                  CanUserSortColumns="True">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Name" Binding="{Binding Path=Name}"/>
                <DataGridTextColumn Header="Age" Binding="{Binding Path=Age}"/>
                <DataGridTextColumn Header="Date Of Birth" Binding="{Binding Path=DateOfBirth}"/>
                <DataGridTextColumn Header="Address" Binding="{Binding Path=Address}"/>
                <DataGridTemplateColumn>
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Grid>
                                <Button Content="Remove..." Margin="3" Command="{Binding Path=RemoveCommand}" />
                            </Grid>
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>
            </DataGrid.Columns>
        </DataGrid>
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,当我单击按钮时,需要从DataGrid中删除记录。

因此,我需要这样的要求:我应该将Command放在业务对象类中,而不是放在ViewModel类中。

当我单击每一行中的按钮时,应删除该对应的行。

因此,由于业务对象类不具有有关DataGrid项的信息,因此如何在业务对象类中执行命令来查找在DataGrid中选择哪个项目来删除行?

wpf datagrid business-objects mvvm

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

类(业务对象)未出现在RDLC的报表数据工具箱中

我在类库(作为嵌入式资源)中创建了一个本地报表,我想使用现有的业务对象作为报表的数据源.当我尝试从"报表数据"工具箱添加业务对象时,我看不到要选择的类.我注意到的是,如果业务对象是另一个类的子类,它存在于另一个类库中,那么它就不会出现.有没有人见过这个?所以我试过的是这样的:

场景1:

班级图书馆1

  1. 报告文件夹> Report1.rdlc
  2. BO文件夹> MyBO和MySuperClass
  3. 公共类MyBO:MySuperClass

当我打开Report1.rdlc并尝试从Report Data工具箱创建一个New Object Data Source时,MyBO类是可见的,我可以选择它.如果我改变我的解决方案:

类库2命名空间ClassLibrary2 {public class MySuperClass {...}}

班级图书馆1

  1. 报告文件夹> Report1.rdlc
  2. BO文件夹> MyBO
  3. 公共类MyBO:ClassLibrary2.MySuperClass

现在,当我尝试添加MyBO类时,它不会出现在"报表数据"工具箱中.不幸的是,我正在使用一个产品,而我的Business对象必须是另一个类库中的超类的子类.

有谁知道如何解决这个问题或这是一个错误?哦,我正在使用.Net 4和VS2010.谢谢.

亲切的问候

Sidharth

objectdatasource business-objects rdlc

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

使用WebI限制BO中返回的结果或行数

除了使用自定义SQL之外,如何限制WebI中查询返回的结果/行数?可能就像"前100名"记录.

我无法更改参数中的"限制结果大小",因为我不希望它影响任何其他报告.

先感谢您 :)

sap business-objects infoview

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

PL/SQL问题:通过业务对象报告选择时不是有效月错误

这可能并不像应该的那样复杂,但Business Objects似乎对SQL Developer的使用方式非常非常严格.这是有问题的陈述的一部分:

ship_date between '01' || '-' || w_current_ora_month || '-' || to_char(to_date(w_last_day, 'DD-MON-RR HH:MI:SS AM'), 'yy') and to_char(to_date(w_last_day, 'DD-MON-RR HH:MI:SS AM'))
Run Code Online (Sandbox Code Playgroud)

w_current_ora_month VARCHAR2(3)通过以下方式填写:

SELECT to_char(sysdate,   'MON')
  INTO w_current_ora_month
  FROM dual;
Run Code Online (Sandbox Code Playgroud)

w.last_day DATE通过以下方式填写:

SELECT trunc(LAST_DAY('01' || '-' || w_current_ora_month || '-' || to_char(w_year)))
    into w_last_day
    from dual
Run Code Online (Sandbox Code Playgroud)

从Business Objects中提取时为什么会出现"无效月"错误?我已经发现Business对象在类型上是严格的,所以我想知道我在这里做错了什么.所有这些在SQL开发人员中运行良好,但我不得不一遍又一遍地调整此语句,以便在Business Objects使用它时尝试使其工作.

oracle plsql business-objects date-arithmetic

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