Al,
I had a similar problem but only needed a little bit more space ... so I zipped the data in the field. Zip can give you up to 70% compression on average text data.. So, you could store up to 10,000 characters or so. All depends on the data.
Since DNN already references a Zip library (ICSharpCode.SharpZipLib.BZip2), it was relatively easy to call the zip routine prior to storing the data, as unzipping when referencing it .
I STRONGLY recommend NOT changing this table in the Core. As many modules depend on this table for their presistency of data and may have trouble is the table is changed. Besides, you will need to "fix" the table during every upgrade .. ugh! ..
Try the following to compress ... InValue is the string to be compressed and CompressBuffer is the compressed result.
oCompressMemory = New System.IO.MemoryStream
zosCompressed = New BZip2OutputStream(oCompressMemory)
byteBuffer = System.Text.Encoding.ASCII.GetBytes(InValue)
zosCompressed.Write(byteBuffer, 0, byteBuffer.Length)
zosCompressed.Finalize()
zosCompressed.Close()
byteBuffer = oCompressMemory.ToArray()
CompressBuffer = Convert.ToBase64String(byteBuffer)
Give it a try and see if that helps. Search thru the DNN Source for lots of examples...
Paul.
EDIT: Just notice that also encoded the result into Base64 string ... that's not really required, but insures the string only contain "printable" character .. this will make the string a bit longer then the raw compressed data.