我在一个表中有一个CreatedBy列,它的数据类型是一个整数。SubSonic在这上面崩溃了,因为它显然使用了CreatedBy、CreatedOn、ModifiedBy和ModifiedOn。By列需要是字符串。
有没有办法让SubSonic知道它必须忽略这些列?
发布于 2009-05-20 11:56:58
不,您可能需要将该列重命名为CreateByUser或其他名称。
您还可以将其更改为nvarchar(50),并创建一个ModifiedBy nvarchar(50)列,然后让它正常工作。
发布于 2009-05-20 16:49:35
是的..。这是完全可行的。首先向我们展示使它崩溃的代码。我可能知道那是什么。您可能正在尝试这样做
MyRecord.Save();当你需要做的时候,传入创建记录的人的id。
MyRecord.Save(55);SubSonic知道您的列是什么数据类型,所以您不需要告诉它是什么数据类型。此外,如果您查看一下,会发现有Save方法的重载,即Save(int id)、Save(string id)和Save(Guid id)。因此,只要您为CreateBy列使用了int、字符串或guid,就可以继续使用了,您只需要记住传入ID,因为如果您使用这些列,SubSonic会期望它。
https://stackoverflow.com/questions/887441
复制相似问题