XDocument Exclusive Access

T

Tom

I can successfully do the following:

xdocument doc = xdocument.load(... my file);
xelement bla = doc.descendants.("it").first();
.... do stuff ...
doc.save("myfile");

the above works great. however, i want to interact with the file with
exclusive access so that no other files can open it/write to it/etc. while
i'm doing stuff with it.

i know that there's the normal FileStream.open (etc., fileshare.none), but
the xdocument class doesn't take a stream as a constructor.

is there any way i can do this without having to use the xmldocument class?

Thanks.
 
T

Tom

thanks alex,

that seems like the right idea, but it didn't seem to work. i get the
following exception:
"non white space characters cannot be added to content"

it looks like the constructor for the xdocument class can only take any of
the following:
1. nothing (e.g. - xdocument())
2. params object[] content
3. xdocument other
4. xdeclaration declaration, params object[] content

so i think when i try to use your example below, my guess is that it's
trying to add the new xmltextreader as content. any other ideas? i'll keep
playing with this one though.

thanks again.
-- tom


Alex Meleta said:
Hi Tom,

For example like this XDocument.Load(new XmlTextReader(new FileStream
.....

ps. mind 'using' statement

Regards, Alex Meleta
[TechBlog] http://devkids.blogspot.com
I can successfully do the following:

xdocument doc = xdocument.load(... my file);
xelement bla = doc.descendants.("it").first();
... do stuff ...
doc.save("myfile");
the above works great. however, i want to interact with the file with
exclusive access so that no other files can open it/write to it/etc.
while i'm doing stuff with it.

i know that there's the normal FileStream.open (etc., fileshare.none),
but the xdocument class doesn't take a stream as a constructor.

is there any way i can do this without having to use the xmldocument
class?
 
T

Tom

thanks alex. this actually worked like a charm. it's early, and i'm not
awake yet.


Alex Meleta said:
Hi Tom,

For example like this XDocument.Load(new XmlTextReader(new FileStream
.....

ps. mind 'using' statement

Regards, Alex Meleta
[TechBlog] http://devkids.blogspot.com
I can successfully do the following:

xdocument doc = xdocument.load(... my file);
xelement bla = doc.descendants.("it").first();
... do stuff ...
doc.save("myfile");
the above works great. however, i want to interact with the file with
exclusive access so that no other files can open it/write to it/etc.
while i'm doing stuff with it.

i know that there's the normal FileStream.open (etc., fileshare.none),
but the xdocument class doesn't take a stream as a constructor.

is there any way i can do this without having to use the xmldocument
class?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top