sharpSerializer Error CS0103 when webplayer selected in build settings

I’m using an external library sharpSerializer in Unity 4.2.1f4 (latest), and I’m getting this error message:

Assets/Scripts/Libraries/SharpSerializer/Advanced/PropertyProvider.cs(302,57): error CS0103: The name `Items’ does not exist in the current context

But I’m only getting that message when webplayer is selected in the build settings. When a standard desktop build is selected, everything compiles and I can run in-editor and build a standalone executable. SharpSerializer works just fine.

So there’s obviously some sort of problem building the webplayer with this library, but I don’t even know where to start to fix this problem. I want to be able to build for webplayer.

The specific file that’s throwing the error is here in the library’s repo:

http://sharpserializer.codeplex.com/SourceControl/latest#SharpSerializer.Library/Advanced/PropertyProvider.cs

The offending line is near the end of the file. I’m only using the contents of the SharpSerializer.Library folder.

I’ve just checked, and it seems there’s a difference in implementation of Collection class between mscorlib used for web player and the one used for standalone. In standalone implementation you can find Items property, while web player implementation doesn’t contain it. Additionally, in Unity [Mono Compatibility page][1], you can see that there’s no Items property under Collection class.

I guess you can compile sharpserializer by yourself, changing the offending part of source code to

for(int i=0; i<this.Count; i++)
{
    var item = this*;*

if (item.Type == type) return item;
}
But I think you can encounter a lot more errors during compilation.
Another option would be considering other serialization libraries. Maybe JSON-based?
[1]: http://docs.unity3d.com/412/Documentation/ScriptReference/MonoCompatibility.html